]> wimlib.net Git - wimlib/blobdiff - doc/imagex.1.in
doc/imagex-capture.1.in: update --delta-from docs
[wimlib] / doc / imagex.1.in
index 6d0053ce6b9f427d9f8aacce162295696943a425..3c14e64481a87bad1c08aa8ed03d3d0ef5f7acb8 100644 (file)
@@ -1,4 +1,4 @@
-.TH IMAGEX 1 "May 2013" "@IMAGEX_PROGNAME@ @VERSION@" "User Commands"
+.TH WIMLIB-IMAGEX 1 "August 2013" "@IMAGEX_PROGNAME@ @VERSION@" "User Commands"
 .SH NAME
 @IMAGEX_PROGNAME@ \- Create, modify, extract, mount, or unmount a WIM (Windows Imaging Format) archive
 .SH SYNOPSIS
 .br
 \fB@IMAGEX_PROGNAME@ update\fR \fIarguments...\fR
 .SH DESCRIPTION
-\fB@IMAGEX_PROGNAME@\fR is able to deal with archives in the Windows Imaging
-Format (.wim files). Its interface is meant to be similar to Microsoft's
-imagex.exe program.
+\fB@IMAGEX_PROGNAME@\fR deals with archives in the Windows Imaging Format (.wim
+files). Its interface is meant to be similar to Microsoft's "imagex.exe"
+program, but it also provide many useful extensions.
 .PP
-To do its work, \fB@IMAGEX_PROGNAME@\fR uses \fBwimlib\fR, a library which
-provides interfaces for manipulating WIM archives.  You could wimlib in your own
-programs if you wanted to.  wimlib's public interface is documented.
+To do its work, \fB@IMAGEX_PROGNAME@\fR uses \fBwimlib\fR, a C library which
+provides interfaces for manipulating WIM archives.  You can wimlib in your own
+programs if desired, although \fB@IMAGEX_PROGNAME@\fR already provides access to
+most of wimlib's functionality.  In some cases, however, there are general
+interfaces which are only used by \fB@IMAGEX_PROGNAME@\fR in a specific way, so
+it may be worth taking a look if you're looking to do something beyond what
+\fB@IMAGEX_PROGNAME@\fR directly supports.
 .SH COMMANDS
-There is a separate manual page for each \fB@IMAGEX_PROGNAME@\fR command.
+\fB@IMAGEX_PROGNAME@\fR accepts one of a number of commands (listed above in
+\fBSYNOPSYS\fR), and additional arguments depending on the specific command.
+Although \fB@IMAGEX_PROGNAME@\fR will print usage information with \fB--help\fR
+or if you invoke it incorrectly, the full documentation for each
+\fB@IMAGEX_PROGNAME@\fR command can be found in the appropriate manual page.
+.PP
+Note: to save typing, if appropriate hard links or batch files have been
+installed, a command \fB@IMAGEX_PROGNAME@ \fICOMMAND\fR can also be accessed as
+simply \fBwim\fICOMMAND\fR; for example, \fBwimapply\fR for \fB@IMAGEX_PROGNAME@
+apply\fR.
 .SH SUPPORTED FEATURES
-The following general features are currently supported (note: this is not a
-complete list; also, certain features, such as mounting, are supported on UNIX
-but not Windows):
+The following are some of the main features currently supported by
+\fB@IMAGEX_PROGNAME@\fR, and pointers to the relevant commands:
 .IP \[bu] 4
-Create a stand-alone WIM from a directory or NTFS volume (\fB@IMAGEX_PROGNAME@ capture\fR)
+Create a standalone WIM from a directory or NTFS volume (\fB@IMAGEX_PROGNAME@ capture\fR)
+.IP \[bu]
+Capture a WIM image directly to standard output in a special pipable format
+(\fB@IMAGEX_PROGNAME@ capture\fR)
 .IP \[bu]
-Append a directory or NTFS volume onto a stand-alone WIM as a new image (\fB@IMAGEX_PROGNAME@
+Append a directory or NTFS volume onto a standalone WIM as a new image (\fB@IMAGEX_PROGNAME@
 append\fR)
 .IP \[bu]
-Apply an image from a stand-alone or split WIM to a directory or NTFS volume
+Apply an image from a standalone or split WIM to a directory or NTFS volume
+(\fB@IMAGEX_PROGNAME@ apply\fR)
+.IP \[bu]
+Apply an image from a special pipable WIM format sent over standard input
 (\fB@IMAGEX_PROGNAME@ apply\fR)
 .IP \[bu]
-Mount an image from a stand-alone or split WIM read-only (\fB@IMAGEX_PROGNAME@ mount\fR)
+Mount an image from a standalone or split WIM read-only (\fB@IMAGEX_PROGNAME@
+mount\fR) (not available on Windows)
 .IP \[bu]
-Mount an image from a stand-alone WIM read-write (\fB@IMAGEX_PROGNAME@ mountrw\fR)
+Mount an image from a standalone WIM read-write (\fB@IMAGEX_PROGNAME@
+mountrw\fR) (not available on Windows)
 .IP \[bu]
 Extract individual files or directories from a WIM without mounting it
 (\fB@IMAGEX_PROGNAME@ extract\fR)
 .IP \[bu]
 Make changes to a WIM image without mounting it (\fB@IMAGEX_PROGNAME@ update\fR)
 .IP \[bu]
-Delete image(s) from a stand-alone WIM (\fB@IMAGEX_PROGNAME@ delete\fR)
+Delete image(s) from a standalone WIM (\fB@IMAGEX_PROGNAME@ delete\fR)
 .IP \[bu]
-Export image(s) from a stand-alone or split WIM (\fB@IMAGEX_PROGNAME@ export\fR)
+Export image(s) from a standalone or split WIM (\fB@IMAGEX_PROGNAME@ export\fR)
 .IP \[bu]
 Display information about a WIM file (\fB@IMAGEX_PROGNAME@ info\fR, \fB@IMAGEX_PROGNAME@ dir\fR)
 .IP \[bu]
@@ -73,90 +93,108 @@ Change the name or description of an image in the WIM (\fB@IMAGEX_PROGNAME@ info
 .IP \[bu]
 Change which image in a WIM is bootable (\fB@IMAGEX_PROGNAME@ info\fR)
 .IP \[bu]
-Combine split WIMs into one stand-alone WIM (\fB@IMAGEX_PROGNAME@ join\fR)
+Combine split WIMs into one standalone WIM (\fB@IMAGEX_PROGNAME@ join\fR)
 .IP \[bu]
-Split a stand-alone WIM into multiple parts (\fB@IMAGEX_PROGNAME@ split\fR)
+Split a standalone WIM into multiple parts (\fB@IMAGEX_PROGNAME@ split\fR)
 .IP \[bu]
 Support for all WIM compression types, both compression and decompression (LZX,
 XPRESS, and none)
 .IP \[bu]
 WIM integrity table is supported (\fB--check\fR option to many commands)
-.IP \[bu]
-WIM XML data (parsed and written using \fBlibxml\fR(3))
 .SH DIFFERENCES FROM MICROSOFT IMAGEX
-While similar to Microsoft's "imagex.exe" program, this program is designed for
-UNIX-based systems and by the nature of the platform cannot be exactly the same
-as Microsoft's version.  In addition, I have added additional useful features
-when appropriate.
+Although \fB@IMAGEX_PROGNAME@\fR shares some similarities with Microsoft's
+implementation of ImageX, this section lists some noteworthy differences between
+the two programs:
 .IP \[bu] 4
+\fB@IMAGEX_PROGNAME@\fR is supported on both UNIX-like systems and Windows;
+thus, some functionality was designed around this.
+.IP \[bu]
+The command-line syntax of the two programs is similar but not exactly the same.
+.IP \[bu]
 Because Microsoft designed the WIM file format to accomodate Windows-specific
-and NTFS-specific features, wimlib must have two separate image capture and
-application modes (although the \fB@IMAGEX_PROGNAME@\fR subcommands for the modes are the
-same): one for general image capture and application, and one for the capture or
-application of an image specifically from/to an NTFS volume.
+and NTFS-specific features, on UNIX-like systems wimlib must have two separate
+image capture and application modes (although the \fB@IMAGEX_PROGNAME@\fR
+commands for the modes are the same): one for image capture and application
+from/to a directory, and one for the capture or application of an image
+specifically from/to an NTFS volume.
 .IP ""
-Note: the above applies to UNIX builds.  On the Windows builds of wimlib, there
-is only one image capture and application mode, similar to Microsoft's ImageX.
+Note: the above applies to builds of \fB@IMAGEX_PROGNAME@\fR for UNIX-like
+systems.  On the Windows build, there is only one image capture and application
+mode, similar to Microsoft's ImageX.
 .IP \[bu]
-Microsoft's version has some weird limitations, like it won't let you extract a
-WIM on a shared folder, and it requires some commands to be run only from
-Windows PE and not from regular Windows.  This version does not have these
-unusual limitations.
+wimlib supports multithreaded compression, which can make it much faster to
+create compressed WIM files.
 .IP \[bu]
-There are bugs in Microsoft's WIM library and I obviously have not included the
-same bugs in wimlib, although in some cases I have had to work around bugs for
-compatibility purposes.
+wimlib's XPRESS compressor is slightly better than Microsoft's (in terms of
+compression ratio).
 .IP \[bu]
-\fB@IMAGEX_PROGNAME@\fR offers the extra command \fB@IMAGEX_PROGNAME@ optimize\fR,
-which lets you easily remove wasted space in a WIM (which can arise after
-a WIM image is appended or mounted read-write).
+wimlib's LZX compressor is slightly worse than Microsoft's (in terms of
+compression ratio), but it's still better than XPRESS compression.
 .IP \[bu]
-\fB@IMAGEX_PROGNAME@\fR also offers the command \fB@IMAGEX_PROGNAME@ join\fR, which lets you
-easily join the parts of a split WIM.
+\fB@IMAGEX_PROGNAME@ capture\fR defaults to LZX ("maximum") compression for new
+WIMs, as opposed to Microsoft's software which defaults to XPRESS ("fast")
+compression.
 .IP \[bu]
 \fB@IMAGEX_PROGNAME@\fR offers the extra commands \fB@IMAGEX_PROGNAME@
 extract\fR and \fB@IMAGEX_PROGNAME@ update\fR, which let you quickly extract
 files from or make changes to a WIM image without mounting it.
 .IP \[bu]
-\fB@IMAGEX_PROGNAME@ apply\fR supports keeping files hard-linked or symlinked
-across WIM images when extracted from a WIM.  So you can, for example, extract
-different versions of Windows from an install.wim without using much extra
-space.  (Note: this functionality is only available in UNIX builds of wimlib.)
+\fB@IMAGEX_PROGNAME@\fR offers the extra command \fB@IMAGEX_PROGNAME@
+optimize\fR, which lets you easily remove wasted space in a WIM (which can arise
+after a WIM image is appended or mounted read-write).
 .IP \[bu]
-\fB@IMAGEX_PROGNAME@ capture\fR supports combining multiple separate directories
-and files together in a configurable way to create a WIM image.
+\fB@IMAGEX_PROGNAME@\fR also offers the command \fB@IMAGEX_PROGNAME@ join\fR,
+which lets you easily join the parts of a split WIM.
 .IP \[bu]
-wimlib's XPRESS compressor is better than Microsoft's.
+For convenience, \fB@IMAGEX_PROGNAME@\fR automatically preserves the integrity
+table in WIMs that have one, even when \fB--check\fR is not specified.
 .IP \[bu]
-wimlib supports multithreaded compression, which can make it much faster to
-create compressed WIM files.
+wimlib supports a special "pipable" WIM format (not compatible with Microsoft's
+software).  This allows capturing and applying images directly to standard
+output or from standard input, respectively; this can be used to pipe images to
+or from a server over the network to implement fast filesystem imaging and
+restore.
 .IP \[bu]
-\fB@IMAGEX_PROGNAME@ capture\fR supports a special mode where UNIX file modes,
-owners, and groups are stored.  (Note: this functionality is only available in
-UNIX builds.)
+\fB@IMAGEX_PROGNAME@ capture\fR and \fB@IMAGEX_PROGNAME@ append\fR support
+options to optimize incremental backups and to create "delta" WIM files.
 .IP \[bu]
-\fB@IMAGEX_PROGNAME@ mount\fR and \fB@IMAGEX_PROGNAME@ mountrw\fR are much faster than
-Microsoft's versions for some reason.  I don't know what they have their program
-do that takes so long to simply set up a mountpoint.  (Note: this functionality
-is only available in UNIX builds.)
+wimlib (and \fB@IMAGEX_PROGNAME@\fR via \fB@IMAGEX_PROGNAME@ capture\fR)
+supports combining multiple separate directories and files together in a
+configurable way to create a WIM image.
 .IP \[bu]
-\fB@IMAGEX_PROGNAME@ mount\fR supports mounting an image from a split WIM, but
-Microsoft's software does not.  (Note: this functionality is only available in
-UNIX builds.)
+Microsoft's ImageX has some weird limitations, like it won't let you extract a
+WIM on a shared folder, and it requires some commands to be run only from
+Windows PE and not from regular Windows.  \fB@IMAGEX_PROGNAME@\fR does not have
+these unusual limitations.
+.IP \[bu]
+There are bugs in Microsoft's WIM library and I obviously have not included the
+same bugs in wimlib, although in some cases I have had to work around bugs for
+compatibility purposes.
+.IP \[bu]
+wimlib (and \fB@IMAGEX_PROGNAME@\fR via \fB@IMAGEX_PROGNAME@ mount\fR) support
+mounting an image from a split WIM, but Microsoft's software does not.  (Note:
+this functionality is not available in Windows builds of wimlib and
+\fB@IMAGEX_PROGNAME@\fR.)
+.IP \[bu]
+\fB@IMAGEX_PROGNAME@ capture\fR supports a special mode where UNIX file modes,
+owners, and groups are stored.  (Note: this functionality is only available in
+builds of wimlib for UNIX-like systems.)
 .SH LOCALES AND CHARACTER ENCODINGS
-On Windows, wimlib 1.3.2 and later works in UTF-16LE, and there should be no
-problems with character encodings.
+On Windows, wimlib works in UTF-16LE, and there should be no problems with
+character encodings.
 .PP
 On UNIX, wimlib works primarily in the locale-dependent multibyte encoding,
 which you are strongly recommended to set to UTF-8 to avoid any problems.
-.SH WARNING
-Note: \fBwimlib\fR and \fB@IMAGEX_PROGNAME@\fR are experimental.  Use Microsoft's
-imagex.exe if you have to make sure your WIM files are made "correctly".  Feel
-free to submit a bug report if you find a bug.
-.PP
-Some parts of the WIM file format are poorly documented or even completely
-undocumented, so I've just had to do the best I can to read and write WIMs in a
-way that appears to be compatible with Microsoft's software.
+.SH CASE SENSITIVITY
+The case sensitivity of \fB@IMAGEX_PROGNAME@\fR differs somewhat between
+UNIX-like systems and Windows.  Filenames are internally treated as
+case-sensitive, but on Windows paths actually provided by the user will be
+treated as case-insensitive in order to get the "expected" behavior.  Otherwise,
+options and non-path arguments should be specified in lower case.
+.SH LICENSE
+wimlib and \fB@IMAGEX_PROGNAME@\fR are distributed under the GNU General Public
+License version 3 or later.  Be aware this means this software is provided as-is
+and has no warranty; see COPYING for details.
 .SH REPORTING BUGS
 Report bugs to ebiggers3@gmail.com.
 .SH SEE ALSO