]> wimlib.net Git - wimlib/blobdiff - doc/man1/imagex-capture.1.in
imagex-capture.1.in: Update
[wimlib] / doc / man1 / imagex-capture.1.in
index 1c3586360d345b20059bedb7105fda58717036b5..6f7116da40df3d0760a9ea2018b4d9fe7cd91daf 100644 (file)
@@ -1,4 +1,4 @@
-.TH WIMLIB-IMAGEX "1" "March 2014" "@IMAGEX_PROGNAME@ @VERSION@" "User Commands"
+.TH WIMLIB-IMAGEX "1" "June 2014" "@IMAGEX_PROGNAME@ @VERSION@" "User Commands"
 .SH NAME
 @IMAGEX_PROGNAME@-capture, @IMAGEX_PROGNAME@-append \- Create or append a WIM image
 .SH SYNOPSIS
@@ -57,10 +57,10 @@ the WIM format was designed for Windows, so it cannot store all possible
 metadata from filesystems used on UNIX-like systems.  The main information that
 will \fInot\fR be stored is:
 .IP \[bu] 4
-UNIX file owners, groups, and modes.  (Exception: see the \fB--unix-data\fR
-option.)  As a result, file permissions will not be stored, and files that are
-neither regular files, directories, nor symbolic links, such as device files and
-FIFOs, cannot be captured and will be excluded by default.
+UNIX file owners, groups, modes, and device IDs (major and minor numbers),
+unless the \fB--unix-data\fR option is specified.  By default (without
+\fB--unix-data\fR), files that are neither regular files, directories, nor
+symbolic links, such as device nodes and FIFOs, will be excluded.
 .IP \[bu]
 Extended attributes.  This mainly includes extensions to the traditional UNIX
 security model, such as SELinux security labels, POSIX ACLs, and capabilities
@@ -127,7 +127,7 @@ subject to the WIM format's compression.)
 .SH DIRECTORY CAPTURE (WINDOWS)
 On Windows, \fB@IMAGEX_PROGNAME@ capture\fR and \fB@IMAGEX_PROGNAME@ append\fR
 natively support Windows-specific and NTFS-specific data.  They therefore act
-similarly to the corresponding commands of Microsoft's ImageX.  For best
+similarly to the corresponding commands of Microsoft's ImageX or DISM.  For best
 results, the directory being captured should be on an NTFS volume and
 \fB@IMAGEX_PROGNAME@\fR should be run with Administrator privileges; however,
 non-NTFS filesystems and running without Administrator privileges are also
@@ -192,29 +192,20 @@ a WIM file created with \fB@IMAGEX_PROGNAME@ capture\fR, while a WIM file
 updated with \fB@IMAGEX_PROGNAME@ append\fR will be written with an integrity
 table if and only if one was present before.
 .TP
-\fB--compress\fR=\fITYPE\fR
-Specifies the compression type for the new WIM file.  This flag is only valid
-for \fB@IMAGEX_PROGNAME@ capture\fR, since the compression mode for
-\fB@IMAGEX_PROGNAME@ append\fR must be the same as that of the existing
-WIM (and is automatically set as such).  \fITYPE\fR may be "none",
-"fast", or "maximum".  As of wimlib v1.5.3, the default is LZX compression, but
-in a special mode that is somewhere in between "fast" and "maximum" in terms of
-speed and compression ratio.  Use \fB--compress\fR=\fImaximum\fR to explicitly
-request a better compression ratio at the cost of more time spent compressing.
-.IP ""
-You may also specify the actual names of the compression algorithms, "XPRESS"
-and "LZX", instead of "fast" and "maximum", respectively.
-.IP ""
-As of wimlib v1.6.0, a third compression type, "recovery" or "LZMS", is also
-available.  Its use is generally not recommended because other than wimlib
-itself, as of Windows 8 it is only compatible with WIMGAPI and Windows Setup
-(not even ImageX or Dism).  However, LZMS is the compression algorithm used in
-packed resources created if the \fB--pack-streams\fR option is specified.
-.TP
-\fB--compress-slow\fR
-Spend even more time compressing the data to achieve a very slightly better
-compression ratio.  This currently only has an effect for LZX ("maximum", the
-default) and LZMS ("recovery") compression.
+\fB--compress\fR=\fITYPE\fR[:\fILEVEL\fR]
+Specifies the compression format for the new WIM file.  \fITYPE\fR may be
+"none", "XPRESS" (alias: "fast"), "LZX" (alias: "maximum"), or "LZMS" (alias:
+"recovery").  \fITYPE\fR is matched case-insensitively.  The default is "LZX".
+.IP ""
+You can optionally also specify an integer compression \fILEVEL\fR.  The
+compression level specifies how hard the compression algorithm for the specified
+compression \fITYPE\fR will work to compress the data.  The values are scaled so
+that 20 is quick compression, 50 is medium compression, and 100 is high
+compression.  However, you can choose any value, and not just these particular
+values.  The default is 50.
+.IP ""
+Be careful if you choose LZMS compression.  It is not compatible with wimlib
+before v1.6.0, WIMGAPI before Windows 8, DISM before Windows 8.1, and 7-Zip.
 .TP
 \fB--chunk-size\fR=\fISIZE\fR
 Set the WIM compression chunk size to \fISIZE\fR bytes.  Larger chunks mean larger
@@ -225,7 +216,7 @@ decide to use this option regardless, you may choose a chunk size that is
 allowed by the compression format.  All formats only allow power-of-2 chunk
 sizes.  For LZX ("maximum") compression the maximum allowed chunk size is 2^21
 (2097152), for XPRESS ("fast") compression the maximum allowed chunk size is
-2^26 (67108864), and for LZMS ("recovery") compression the maximum allowed chunk
+2^16 (65536), and for LZMS ("recovery") compression the maximum allowed chunk
 size is 2^30 (1073741824).
 .IP ""
 Beware that Microsoft's implementation has limited support for non-default chunk
@@ -234,32 +225,30 @@ open it and crash, or open it and report the data is invalid, or even extract
 the data incorrectly.  In addition, wimlib versions before 1.6.0 do not support
 alternate chunk sizes.
 .TP
-\fB--pack-streams\fR, \fB--solid\fR
+\fB--solid\fR
 Create a "solid" archive that compresses multiple unique streams ("files")
 together, rather than each unique stream ("file") independently.  This can
 result in a significantly better compression ratio, but this format greatly
 decreases the performance of random access to the data, as may occur on a WIM
 mounted with \fB@IMAGEX_PROGNAME@ mount\fR.  Also, WIMs created using this
-option use a different version number in their header and as of Windows 8 are
-only compatible with Windows Setup and WIMGAPI, not even ImageX and Dism.
+option use a different version number in their header and are only compatible
+with WIMGAPI Windows 8 and later, and DISM Windows 8.1 and later.
 .IP ""
-The default compression type and chunk size in packed resources is LZMS with
-2^25 (33554432) byte chunks.  This is independent of the WIM's main compression
-type and chunk size.
+The default compression type and chunk size in solid blocks is LZMS with 2^25
+(33554432) byte chunks.  This is independent of the WIM's main compression type
+and chunk size.
 .TP
-\fB--pack-chunk-size\fR=\fISIZE\fR, \fB--solid-chunk-size\fR=\fISIZE\fR
-Like \fB--chunk-size\fR, but set the chunk size used in packed resources.  The
+\fB--solid-chunk-size\fR=\fISIZE\fR
+Like \fB--chunk-size\fR, but set the chunk size used in solid blocks.  The
 default is LZMS compression with 2^25 (33554432) byte chunks.  This option only
-has an effect when \fB--pack-streams\fR is also specified.  For maximum
-compatibility with the Microsoft implementation, do not use either of these
-options.
+has an effect when \fB--solid\fR is also specified.  For maximum compatibility
+with the Microsoft implementation, do not use either of these options.
 .TP
-\fB--pack-compress\fR=\fITYPE\fR, \fB--solid-compress\fR=\fITYPE\fR
-Like \fB--compress\fR, but set the compression format used in packed resources.
-The default is LZMS compression with 2^25 (33554432) byte chunks.  This option
-only has an effect when \fB--pack-streams\fR is also specified.  For maximum
-compatibility with the Microsoft implementation, do not use either of these
-options.
+\fB--solid-compress\fR=\fITYPE\fR[:\fILEVEL\fR]
+Like \fB--compress\fR, but set the compression type used in solid blocks.  The
+default is LZMS compression with 2^25 (33554432) byte chunks.  This option only
+has an effect when \fB--solid\fR is also specified.  For maximum compatibility
+with the Microsoft implementation, do not use either of these options.
 .TP
 \fB--threads\fR=\fINUM_THREADS\fR
 Number of threads to use for compressing data.  Default: autodetect (number of
@@ -280,9 +269,9 @@ image.
 to, rather than archiving the links themselves.
 .TP
 \fB--config\fR=\fIFILE\fR
-Specifies a configuration file (UTF-8 or UTF-16LE encoded) for capturing the new
-image.  The configuration file specifies files that are to be treated specially
-during the image capture.
+Specifies a configuration file (UTF-8 or UTF-16LE encoded; plain ASCII also
+works) for capturing the new image.  The configuration file specifies files that
+are to be treated specially during the image capture.
 .IP ""
 The format of the configuration file is INI-style; that is, it is arranged in
 bracketed sections.  Currently, only the following sections are recognized:
@@ -294,32 +283,26 @@ a directory is matched, both the directory and its contents are excluded.
 [ExclusionException] --- contains a list of path globs to include in the
 capture, even when the file or directory also matches a glob in [ExclusionList].
 .IP \[bu]
-[PrepopulateList] --- this does not affect capture, but if the image is
-applied later with \fB--wimboot\fR, these are globs of files that shall be
-extracted normally, not as WIMBoot "pointer files".  Note that these globs do
-\fInot\fR match recursively; so, for example, you may want to use \\Boot\\* and
-\\Boot\\*\\* rather than simply \\Boot.
+[PrepopulateList] --- this does not affect capture, but if the image is applied
+later with \fB--wimboot\fR, these are globs of files that shall be extracted
+normally, not as WIMBoot "pointer files".  If a directory is matched, all files
+and subdirectories are also matched recursively.
 .RE
 .IP ""
 Any unrecognized sections will be ignored, with a warning printed.  Sections
 dealing with compression (e.g. [CompressionExclusion]) are not particularly
 important.
 .IP ""
-Relative globs with only one path component (e.g. *.mp3) match against a
-filename in any directory.  Relative globs with multiple path components (e.g.
-dir/file), as well as absolute globs (e.g. /dir/file), are treated as paths
-starting at the root directory of capture, or the root of the NTFS volume for
-NTFS volume capture mode.
-.IP ""
-For compatibility with Windows, the path separators in the globs may be either
-forward slashes or backslashes, and the line separators may be either UNIX-style
-or DOS-style.  Trailing and leading whitespace is ignored.  Lines beginning with
-the '#' or ';' characters are treated as comments and ignored.  Globs with
-whitespace in them need not be quoted, unless the whitespace is leading or
-trailing.  Both double and single quotes are accepted.
+Path globs may contain the '*' and '?' meta-characters.  Relative globs (e.g.
+*.mp3) match against a filename in any directory.  Absolute globs (e.g.
+/dir/file), are treated as paths starting at the main directory being captured,
+or the root of the NTFS volume for NTFS volume capture mode.  Do not use drive
+letters in the paths; they will be ignored.  Path separators may be either
+forwards slashes or backwards slashes.
 .IP ""
-Paths may not have drive letters in them, as they are all relative to the root
-of capture and not absolute external paths.
+Lines beginning with the '#' or ';' characters are treated as comments and
+ignored.  Globs with whitespace in them need not be quoted; however, if they
+are, both double and single quotes are accepted.
 .IP ""
 If this option is not specified the following default configuration file is
 used:
@@ -331,6 +314,7 @@ used:
 \\$ntfs.log
 \\hiberfil.sys
 \\pagefile.sys
+\\swapfile.sys
 \\System Volume Information
 \\RECYCLER
 \\Windows\\CSC
@@ -347,13 +331,18 @@ saved in the WIM image as Windows/System32/WimBootCompress.ini, overriding any
 that may be present on the filesystem.
 .TP
 \fB--unix-data\fR
-(UNIX-like systems only) Store the UNIX owner, group, and mode of all captured
-files.  This is done by adding a special alternate data stream to each directory
-entry that contains this information.  Please note that this flag is for
-convenience only, in case you want to use \fB@IMAGEX_PROGNAME@\fR to archive
-files on UNIX.  Microsoft's software will not understand this special
-information.  You also may run into problems when applying an image with UNIX
-data from a pipable WIM.
+(UNIX-like systems only) Store the UNIX owner, group, mode, and device ID (major
+and minor number) of each captured file.  As of wimlib v1.7.0, you can backup
+and restore not only the standard UNIX file permission information, but also
+character device nodes, block device nodes, named pipes (FIFOs), and UNIX domain
+sockets.
+.IP
+wimlib stores UNIX data by adding a special tagged metadata item to each
+directory entry of each file that contains this information.  This extra
+information is ignored by the Microsoft implementation.  Note: UNIX data stored
+by wimlib before v1.7.0 used a different format that is no longer supported.  If
+you have old WIM files with UNIX data, apply them with v1.6.2 and recapture them
+with v1.7.0 or later.
 .TP
 \fB--no-acls\fR
 Do not capture files' security descriptors.
@@ -371,10 +360,8 @@ although the Administrator should have permission to read everything anyway.
 Set whether to fix targets of absolute symbolic links (reparse points in Windows
 terminology) or not.  When enabled (\fB--rpfix\fR), absolute symbolic links that
 point inside the directory tree being captured will be adjusted to be absolute
-relative to the root of the directory tree being captured.  In addition,
-absolute symbolic links that point outside the directory tree being captured
-will be ignored and not be captured at all.  When disabled (\fB--norpfix\fR),
-absolute symbolic links will be captured exactly as is.
+relative to the root of the directory tree being captured.  When disabled
+(\fB--norpfix\fR), absolute symbolic links will be captured exactly as is.
 .IP ""
 The default behavior for \fB@IMAGEX_PROGNAME@ capture\fR is equivalent to
 \fB--rpfix\fR.  The default behavior for \fB@IMAGEX_PROGNAME@ append\fR will be
@@ -413,15 +400,15 @@ winpe     /
 overlay        /overlay
 
 # Overlay a separate directory directly on the root of the WIM image.
-# This is only legal if there are no conflicting files.
 /data/stuff    /
 .RE
 .RE
 .fi
 .IP ""
 Subdirectories in the WIM are created as needed.  Multiple source directories
-may share the same target, which implies an overlay; however, an error is issued
-if the same file appears in different overlays to the same directory.
+may share the same target, which implies an overlay.  In the event that this
+results a nondirectory file being added to the WIM image multiple times, the
+last version (as listed in the source list file) overrides any earlier version.
 .IP ""
 File paths containing whitespace may be quoted with either single quotes or
 double quotes.  Quotes may not be escaped.
@@ -503,7 +490,7 @@ delta is being based.  The new WIM will still contain a full copy of the image
 metadata, but this is typically only a small fraction of a WIM's total size.
 .IP ""
 This option can be specified multiple times, in which case the resulting delta
-WIM will only contain streams not present in any of the specified base
+WIM will only contain streams not present in any of the specified base WIMs.
 .IP ""
 To operate on the resulting delta WIM using other commands such as
 \fB@IMAGEX_PROGNAME@ apply\fR, you must specify the delta WIM as the WIM file to
@@ -543,8 +530,8 @@ modified.
 .IP ""
 Note: unlike "pipable" WIMs (created with the \fB--pipable\fR option), "delta"
 WIMs (created with the \fB--delta-from\fR option) are compatible with
-Microsoft's software.  You can use the /ref option of imagex.exe to reference
-the base WIM(s), similar to above.
+Microsoft's software.  For example, you can use the /ref option of ImageX to
+reference the base WIM(s), similar to above.
 .IP ""
 Additional note:  \fB@IMAGEX_PROGNAME@\fR is generalized enough that you can in
 fact combine \fB--pipable\fR and \fB--delta-from\fR to create pipable delta
@@ -555,7 +542,7 @@ pipe after the delta WIM.
 \fB--wimboot\fR
 Mark the image as WIMBoot-compatible.  See Microsoft's
 documentation for more information about WIMBoot.  This option will, by default,
-change the compression type to XPRESS and the chunk size to 4096 bytes; these
+set the compression type to XPRESS and the chunk size to 4096 bytes; these
 can, however, still be overridden through the \fB--compress\fR and
 \fB--chunk-size\fR parameters, respectively.  In addition, this option will, by
 default, set the configuration file to
@@ -572,7 +559,7 @@ fully rebuilt (e.g. with \fB--rebuild\fR), in which case you should delete the
 temporary file left over.
 .PP
 \fB@IMAGEX_PROGNAME@\fR creates WIMs compatible with Microsoft's software
-(imagex.exe, Dism.exe, wimgapi.dll), with some caveats:
+(WIMGAPI, ImageX, DISM), with some caveats:
 .IP \[bu] 4
 With \fB@IMAGEX_PROGNAME@\fR on UNIX-like systems, it is possible to create a
 WIM image containing files with names differing only in case, or files with
@@ -584,33 +571,29 @@ such names and quit extracting the image partway through.  (It perhaps is worth
 pointing out that Windows' own default filesystem, NTFS, supports these
 characters, although Windows does not!)
 .IP \[bu]
-WIMs captured with \fB--unix-data\fR should be assumed to be incompatible with
-Microsoft's software.
-.IP \[bu]
 Pipable WIMs are incompatible with Microsoft's software.  Pipable WIMs are
 created only if \fIWIMFILE\fR was specified as "-" (standard output) or if
 the \fB--pipable\fR flag was specified.
 .IP \[bu]
 WIMs captured with a non-default chunk size (with the \fB--chunk-size\fR option)
-or as solid archives (with the \fB--pack-streams\fR option) or with LZMS
+or as solid archives (with the \fB--solid\fR option) or with LZMS
 compression (with \fB--compress\fR=LZMS or \fB--compress\fR=recovery) have
-varying levels of compatibility with Microsoft's software.  The best
-compatibility is achieved with WIMGAPI itself (not ImageX or Dism) on Windows 8
-or later.
+varying levels of compatibility with Microsoft's software.  Generally, more
+recent versions of Microsoft's software are more compatible.
 .SH EXAMPLES
-First example:  Create a new WIM 'mywim.wim' with "maximum" (LZX) compression
+First example:  Create a new WIM 'mywim.wim' with LZX ("maximum") compression
 that will contain a captured image of the directory tree 'somedir'.  Note that
 the image name need not be specified and will default to 'somedir':
 .RS
 .PP
-@IMAGEX_PROGNAME@ capture somedir mywim.wim --compress=maximum
+@IMAGEX_PROGNAME@ capture somedir mywim.wim
 .RE
 .PP
 or, if the \fBwimcapture\fR hard link or batch file has been installed, the
 abbreviated form can be used:
 .RS
 .PP
-wimcapture somedir mywim.wim --compress=maximum
+wimcapture somedir mywim.wim
 .RE
 .PP
 The remaining examples will use the long form, however.  Next, append the image
@@ -622,7 +605,7 @@ of a different directory tree to the WIM created above:
 .PP
 Easy enough, and the above examples of imaging directory trees work on both
 UNIX-like systems and Windows.  Next, capture a WIM with several non-default
-options, including "fast" (XPRESS) compression, an integrity table, no messing
+options, including XPRESS ("fast") compression, an integrity table, no messing
 with absolute symbolic links, and an image name and description:
 .RS
 .PP