mirror of
https://github.com/cmclark00/retro-imager.git
synced 2025-05-19 16:35:20 +01:00
292 lines
7.6 KiB
Text
292 lines
7.6 KiB
Text
MTREE(5) manual page
|
|
== NAME ==
|
|
'''mtree'''
|
|
- format of mtree dir hierarchy files
|
|
== DESCRIPTION ==
|
|
The
|
|
'''mtree'''
|
|
format is a textual format that describes a collection of filesystem objects.
|
|
Such files are typically used to create or verify directory hierarchies.
|
|
=== General Format===
|
|
An
|
|
'''mtree'''
|
|
file consists of a series of lines, each providing information
|
|
about a single filesystem object.
|
|
Leading whitespace is always ignored.
|
|
|
|
When encoding file or pathnames, any backslash character or
|
|
character outside of the 95 printable ASCII characters must be
|
|
encoded as a backslash followed by three
|
|
octal digits.
|
|
When reading mtree files, any appearance of a backslash
|
|
followed by three octal digits should be converted into the
|
|
corresponding character.
|
|
|
|
Each line is interpreted independently as one of the following types:
|
|
<dl>
|
|
<dt>Blank</dt><dd>
|
|
Blank lines are ignored.
|
|
</dd><dt>Comment</dt><dd>
|
|
Lines beginning with
|
|
'''#'''
|
|
are ignored.
|
|
</dd><dt>Special</dt><dd>
|
|
Lines beginning with
|
|
'''/'''
|
|
are special commands that influence
|
|
the interpretation of later lines.
|
|
</dd><dt>Relative</dt><dd>
|
|
If the first whitespace-delimited word has no
|
|
'''/'''
|
|
characters,
|
|
it is the name of a file in the current directory.
|
|
Any relative entry that describes a directory changes the
|
|
current directory.
|
|
</dd><dt>dot-dot</dt><dd>
|
|
As a special case, a relative entry with the filename
|
|
''..''
|
|
changes the current directory to the parent directory.
|
|
Options on dot-dot entries are always ignored.
|
|
</dd><dt>Full</dt><dd>
|
|
If the first whitespace-delimited word has a
|
|
'''/'''
|
|
character after
|
|
the first character, it is the pathname of a file relative to the
|
|
starting directory.
|
|
There can be multiple full entries describing the same file.
|
|
</dd></dl>
|
|
|
|
Some tools that process
|
|
'''mtree'''
|
|
files may require that multiple lines describing the same file
|
|
occur consecutively.
|
|
It is not permitted for the same file to be mentioned using
|
|
both a relative and a full file specification.
|
|
=== Special commands===
|
|
Two special commands are currently defined:
|
|
<dl>
|
|
<dt>'''/set'''</dt><dd>
|
|
This command defines default values for one or more keywords.
|
|
It is followed on the same line by one or more whitespace-separated
|
|
keyword definitions.
|
|
These definitions apply to all following files that do not specify
|
|
a value for that keyword.
|
|
</dd><dt>'''/unset'''</dt><dd>
|
|
This command removes any default value set by a previous
|
|
'''/set'''
|
|
command.
|
|
It is followed on the same line by one or more keywords
|
|
separated by whitespace.
|
|
</dd></dl>
|
|
=== Keywords===
|
|
After the filename, a full or relative entry consists of zero
|
|
or more whitespace-separated keyword definitions.
|
|
Each such definition consists of a key from the following
|
|
list immediately followed by an '=' sign
|
|
and a value.
|
|
Software programs reading mtree files should warn about
|
|
unrecognized keywords.
|
|
|
|
Currently supported keywords are as follows:
|
|
<dl>
|
|
<dt>'''cksum'''</dt><dd>
|
|
The checksum of the file using the default algorithm specified by
|
|
the
|
|
[[cksum(1)|http://www.freebsd.org/cgi/man.cgi?query=cksum&sektion=1]]
|
|
utility.
|
|
</dd><dt>'''device'''</dt><dd>
|
|
The device number for
|
|
.B block
|
|
or
|
|
.B char
|
|
file types.
|
|
The value must be one of the following forms:
|
|
<dl>
|
|
<dt>''format'',''major'',''minor''Bo,''subunit'' Bc</dt><dd>
|
|
A device with
|
|
''major'', minor
|
|
and optional
|
|
''subunit''
|
|
fields.
|
|
Their meaning is specified by the operating's system
|
|
''format''.
|
|
See below for valid formats.
|
|
</dd><dt>''number''</dt><dd>
|
|
Opaque number (as stored on the file system).
|
|
</dd></dl>
|
|
|
|
The following values for
|
|
''format''
|
|
are recognized:
|
|
.B native ,
|
|
.B 386bsd ,
|
|
.B 4bsd ,
|
|
.B bsdos ,
|
|
.B freebsd ,
|
|
.B hpux ,
|
|
.B isc ,
|
|
.B linux ,
|
|
.B netbsd ,
|
|
.B osf1 ,
|
|
.B sco ,
|
|
.B solaris ,
|
|
.B sunos ,
|
|
.B svr3 ,
|
|
.B svr4 ,
|
|
and
|
|
.B ultrix .
|
|
|
|
See
|
|
[[mknod(8)|http://www.freebsd.org/cgi/man.cgi?query=mknod&sektion=8]]
|
|
for more details.
|
|
</dd><dt>'''contents'''</dt><dd>
|
|
The full pathname of a file that holds the contents of this file.
|
|
</dd><dt>'''flags'''</dt><dd>
|
|
The file flags as a symbolic name.
|
|
See
|
|
[[chflags(1)|http://www.freebsd.org/cgi/man.cgi?query=chflags&sektion=1]]
|
|
for information on these names.
|
|
If no flags are to be set the string
|
|
"none"
|
|
may be used to override the current default.
|
|
</dd><dt>'''gid'''</dt><dd>
|
|
The file group as a numeric value.
|
|
</dd><dt>'''gname'''</dt><dd>
|
|
The file group as a symbolic name.
|
|
</dd><dt>'''ignore'''</dt><dd>
|
|
Ignore any file hierarchy below this file.
|
|
</dd><dt>'''inode'''</dt><dd>
|
|
The inode number.
|
|
</dd><dt>'''link'''</dt><dd>
|
|
The target of the symbolic link when type=link.
|
|
</dd><dt>'''md5'''</dt><dd>
|
|
The MD5 message digest of the file.
|
|
</dd><dt>'''md5digest'''</dt><dd>
|
|
A synonym for
|
|
'''md5'''.
|
|
</dd><dt>'''mode'''</dt><dd>
|
|
The current file's permissions as a numeric (octal) or symbolic
|
|
value.
|
|
</dd><dt>'''nlink'''</dt><dd>
|
|
The number of hard links the file is expected to have.
|
|
</dd><dt>'''nochange'''</dt><dd>
|
|
Make sure this file or directory exists but otherwise ignore all attributes.
|
|
</dd><dt>'''optional'''</dt><dd>
|
|
The file is optional; do not complain about the file if it is not in
|
|
the file hierarchy.
|
|
</dd><dt>'''resdevice'''</dt><dd>
|
|
The
|
|
"resident"
|
|
device number of the file, e.g. the ID of the device that
|
|
contains the file.
|
|
Its format is the same as the one for
|
|
'''device'''.
|
|
</dd><dt>'''ripemd160digest'''</dt><dd>
|
|
The
|
|
'''RIPEMD160'''
|
|
message digest of the file.
|
|
</dd><dt>'''rmd160'''</dt><dd>
|
|
A synonym for
|
|
'''ripemd160digest'''.
|
|
</dd><dt>'''rmd160digest'''</dt><dd>
|
|
A synonym for
|
|
'''ripemd160digest'''.
|
|
</dd><dt>'''sha1'''</dt><dd>
|
|
The
|
|
'''FIPS'''
|
|
160-1
|
|
("Tn SHA-1")
|
|
message digest of the file.
|
|
</dd><dt>'''sha1digest'''</dt><dd>
|
|
A synonym for
|
|
'''sha1'''.
|
|
</dd><dt>'''sha256'''</dt><dd>
|
|
The
|
|
'''FIPS'''
|
|
180-2
|
|
("Tn SHA-256")
|
|
message digest of the file.
|
|
</dd><dt>'''sha256digest'''</dt><dd>
|
|
A synonym for
|
|
'''sha256'''.
|
|
</dd><dt>'''sha384'''</dt><dd>
|
|
The
|
|
'''FIPS'''
|
|
180-2
|
|
("Tn SHA-384")
|
|
message digest of the file.
|
|
</dd><dt>'''sha384digest'''</dt><dd>
|
|
A synonym for
|
|
'''sha384'''.
|
|
</dd><dt>'''sha512'''</dt><dd>
|
|
The
|
|
'''FIPS'''
|
|
180-2
|
|
("Tn SHA-512")
|
|
message digest of the file.
|
|
</dd><dt>'''sha512digest'''</dt><dd>
|
|
A synonym for
|
|
'''sha512'''.
|
|
</dd><dt>'''size'''</dt><dd>
|
|
The size, in bytes, of the file.
|
|
</dd><dt>'''time'''</dt><dd>
|
|
The last modification time of the file.
|
|
</dd><dt>'''type'''</dt><dd>
|
|
The type of the file; may be set to any one of the following:
|
|
|
|
<dl>
|
|
<dt>'''block'''</dt><dd>
|
|
block special device
|
|
</dd><dt>'''char'''</dt><dd>
|
|
character special device
|
|
</dd><dt>'''dir'''</dt><dd>
|
|
directory
|
|
</dd><dt>'''fifo'''</dt><dd>
|
|
fifo
|
|
</dd><dt>'''file'''</dt><dd>
|
|
regular file
|
|
</dd><dt>'''link'''</dt><dd>
|
|
symbolic link
|
|
</dd><dt>'''socket'''</dt><dd>
|
|
socket
|
|
</dd></dl>
|
|
</dd><dt>'''uid'''</dt><dd>
|
|
The file owner as a numeric value.
|
|
</dd><dt>'''uname'''</dt><dd>
|
|
The file owner as a symbolic name.
|
|
</dd></dl>
|
|
== SEE ALSO ==
|
|
[[cksum(1)|http://www.freebsd.org/cgi/man.cgi?query=cksum&sektion=1]],
|
|
[[find(1)|http://www.freebsd.org/cgi/man.cgi?query=find&sektion=1]],
|
|
[[mtree(8)|http://www.freebsd.org/cgi/man.cgi?query=mtree&sektion=8]]
|
|
== HISTORY ==
|
|
The
|
|
'''mtree'''
|
|
utility appeared in
|
|
BSD 4.3 Reno.
|
|
The
|
|
'''MD5'''
|
|
digest capability was added in
|
|
FreeBSD 2.1,
|
|
in response to the widespread use of programs which can spoof
|
|
[[cksum(1)|http://www.freebsd.org/cgi/man.cgi?query=cksum&sektion=1]].
|
|
The
|
|
'''SHA-1'''
|
|
and
|
|
'''RIPEMD160'''
|
|
digests were added in
|
|
FreeBSD 4.0,
|
|
as new attacks have demonstrated weaknesses in
|
|
'''MD5 .'''
|
|
The
|
|
'''SHA-256'''
|
|
digest was added in
|
|
FreeBSD 6.0.
|
|
Support for file flags was added in
|
|
FreeBSD 4.0,
|
|
and mostly comes from
|
|
NetBSD.
|
|
The
|
|
"full"
|
|
entry format was added by
|
|
NetBSD.
|