start file format docu

This commit is contained in:
Dietmar Maurer 2019-03-16 16:44:45 +01:00
parent ba10f2b0d4
commit 998b827a5d
4 changed files with 55 additions and 1 deletions

View File

@ -30,7 +30,7 @@
# Add any Sphinx extension module names here, as strings. They can be # Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones. # ones.
extensions = [] extensions = ["sphinx.ext.graphviz"]
# Add any paths that contain templates here, relative to this directory. # Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates'] templates_path = ['_templates']

10
docs/file-formats.rst Normal file
View File

@ -0,0 +1,10 @@
File Formats
============
Proxmox File Archive Format (``.pxar``)
---------------------------------------
.. graphviz:: pxar-format-overview.dot

View File

@ -24,6 +24,7 @@ Welcome to Proxmox Backup's documentation!
:caption: Appendix :caption: Appendix
command-syntax.rst command-syntax.rst
file-formats.rst
glossary.rst glossary.rst
* :ref:`genindex` * :ref:`genindex`

View File

@ -0,0 +1,43 @@
digraph g {
graph [
rankdir = "LR"
fontname="Helvetica"
];
node [
fontsize = "16"
shape = "record"
];
edge [
];
"archive" [
label = "archive.pxar"
shape = "record"
];
"rootdir" [
label = "<f0> ENTRY| \{XATTR\}\* extended attribute list\l | \{ACL_USER\}\* USER ACL entries\l | \{ACL_GROUP\}\* GROUP ACL entries\l| \[ACL_GROUP_OBJ\] the ACL_GROUP_OBJ \l| \[ACL_DEFAULT\] the various default ACL fields\l|\{ACL_DEFAULT_USER\}\* USER ACL entries\l|\{ACL_DEFAULT_GROUP\}\* GROUP ACL entries\l|\[FCAPS\] file capability in Linux disk format\l|\[QUOTA_PROJECT_ID\] the ext4/xfs quota project ID\l| { PAYLOAD | SYMLINK | DEVICE | { <de> \{DirectoryEntries\}\* | GOODBYE}}"
shape = "record"
];
"entry" [
label = "<f0> size: u64 = 64\l|type: u64 = ENTRY\l|feature_flags: u64\l|mode: u64\l|flags: u64\l|uid: u64\l|gid: u64\l|mtime: u64\l"
labeljust = "l"
shape = "record"
];
"direntry" [
label = "<f0> FILENAME |{ENTRY | HARDLINK}"
shape = "record"
];
"archive" -> "rootdir":f0
"rootdir":f0 -> "entry":f0
"rootdir":de -> "direntry":f0
}