Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
WIMLIB-IMAGEX(1)		 User Commands		      WIMLIB-IMAGEX(1)

       wimlib-imagex - Extract,	create,	modify,	or mount a WIM archive

       wimlib-imagex append arguments... (or wimappend arguments...)
       wimlib-imagex apply arguments...	(or wimapply arguments...)
       wimlib-imagex capture arguments... (or wimcapture arguments...)
       wimlib-imagex delete arguments... (or wimdelete arguments...)
       wimlib-imagex dir arguments... (or wimdir arguments...)
       wimlib-imagex export arguments... (or wimexport arguments...)
       wimlib-imagex extract arguments... (or wimextract arguments...)
       wimlib-imagex info arguments... (or wiminfo arguments...)
       wimlib-imagex join arguments... (or wimjoin arguments...)
       wimlib-imagex mount arguments...	(or wimmount arguments...)
       wimlib-imagex mountrw arguments... (or wimmountrw arguments...)
       wimlib-imagex optimize arguments... (or wimoptimize arguments...)
       wimlib-imagex split arguments...	(or wimsplit arguments...)
       wimlib-imagex unmount arguments... (or wimunmount arguments...)
       wimlib-imagex update arguments... (or wimupdate arguments...)
       wimlib-imagex verify arguments... (or wimverify arguments...)

       wimlib-imagex  deals  with  archive  files in the Windows Imaging (WIM)
       format.	Its interface is similar to Microsoft's	ImageX,	but wimlib-im-
       agex is cross-platform and has useful improvements and extensions.

       To  do  its  work,  wimlib-imagex uses wimlib, an open source C library
       that provides interfaces	for manipulating WIM archives.	wimlib is com-
       pletely	independent from the equivalent	Microsoft implementation (WIM-
       GAPI, or	wimgapi.dll).  You can use wimlib in your  own	programs,  al-
       though  for  command-line  use wimlib-imagex already provides access to
       most of wimlib's	functionality.

       The Windows Imaging (WIM) format	was designed  by  Microsoft  primarily
       for  archiving  Windows	filesystems, such as NTFS.  However, it	can be
       used on other platforms as well,	with some limitations.	A WIM  archive
       contains	 one  or more images, each of which is a logically independent
       directory tree.	Images are indexed starting from 1, and	each may  also
       have  a	name.  File data is stored as content-addressable "blobs" that
       are deduplicated	across the entire archive.  Data may be	compressed us-
       ing one of several compression algorithms.

       An  update  of  the  WIM	format which Microsoft released	with Windows 8
       uses solid-mode LZMS compression	to achieve a better compression	ratio.
       Such  files are also called "ESD	files" and may have the	.esd extension
       instead of .wim.	 wimlib	fully supports these files  except  when  they
       are encrypted.

       wimlib-imagex accepts one of a number of	commands (listed above in SYN-
       OPSYS), and additional arguments	depending  on  the  specific  command.
       Although	 wimlib-imagex	will print usage information with --help or if
       you invoke it incorrectly, the full documentation for  each  wimlib-im-
       agex command can	be found in the	appropriate manual page.

       Note:  if  appropriate hard links or batch files	have been installed, a
       command wimlib-imagex COMMAND can also be accessed  as  simply  wimCOM-
       MAND;  for  example, wimapply for wimlib-imagex apply.  For brevity the
       documentation uses the shorter names.

       The following are some of the general features, or use cases, currently
       supported by wimlib-imagex, and pointers	to the relevant	commands:

       o   Display information about a WIM file	(wiminfo)

       o   List	the files in a WIM image (wimdir)

       o   Extract, or "apply",	a full WIM image (wimapply)

       o   Extract files or directories	from a WIM image (wimextract)

       o   Capture a WIM image and save	it to a	new WIM	file (wimcapture)

       o   Capture  a  WIM image and append it to an existing WIM file (wimap-

       o   Modify a WIM	image by adding, deleting, or renaming	files  (wimup-

       o   (Linux only)	Mount a	WIM image read-only (wimmount)

       o   (Linux only)	Mount a	WIM image read-write (wimmountrw)

       o   Delete an image from	a WIM file (wimdelete)

       o   Export image(s) from	a WIM file (wimexport)

       o   Change the name or description of a WIM image (wiminfo)

       o   Change the bootable image index of a	WIM file (wiminfo)

       o   Rebuild, and	optionally recompress, a WIM file (wimoptimize)

       o   Split a WIM file into multiple parts	(wimsplit)

       o   Join	a split	WIM (wimjoin)

       o   Verify the validity and integrity of	a WIM file (wimverify)

       This section presents some of the interesting features of wimlib-imagex
       in more detail.

       o   Multi-platform support.  wimlib-imagex is supported on  both	 UNIX-
	   like	 systems  (mainly Linux, but also FreeBSD, Mac OS X, etc.) and
	   Windows.  Most code is shared among all  platforms,	but  platform-
	   specific features are still supported when possible.

       o   XPRESS,  LZX,  and LZMS compression and decompression.  wimlib con-
	   tains advanced implementations of all these compression algorithms.
	   These  have	been improved over time	and now	usually	outperform and
	   outcompress their Microsoft equivalents, while remaining fully com-

       o   Solid-mode  compression, or "ESD file", support. "ESD files"	are an
	   updated WIM format that uses	solid LZMS compression	to  achieve  a
	   better compression ratio.

       o   Multithreaded  compression.	 By default, wimlib's data compression
	   is multithreaded and	will use all available processors.

       o   On UNIX-like	systems, integration with libntfs-3g allows  capturing
	   a  WIM  image directly from an NTFS volume, or applying a WIM image
	   directly to an NTFS volume.	This allows saving and restoring NTFS-
	   specific  data and metadata,	such as	security descriptors and named
	   data	streams, which would otherwise only be supported on Windows.

       o   On UNIX-like	systems, optional support  for	saving	and  restoring
	   standard  UNIX  file	 permissions  (owner/group/mode), UNIX special
	   files, and extended attributes.  (This is a wimlib  extension;  Mi-
	   crosoft's WIM software ignores this extra information.)

       o   On  Linux, support for mounting WIM images with FUSE	(Filesystem in
	   UserSpacE), both readonly and read-write.

       o   Split WIMs.	A split	WIM is	a  WIM	archive	 split	into  multiple
	   parts.   wimsplit can create	a split	WIM from a standalone WIM, and
	   wimjoin can create a	standalone WIM from a split WIM.

       o   Delta WIMs.	A delta	WIM contains image metadata but	excludes  file
	   data	 already present in another WIM	file.  A delta WIM can be cre-
	   ated	using wimcapture with the --delta-from option.

       o   "Pipable" WIMs.  As a wimlib	extension (not compatible with the Mi-
	   crosoft  implementation),  wimcapture supports capturing a WIM file
	   to standard output in a special "pipable" format which can later be
	   applied  by	sending	it to wimapply on standard input.  Among other
	   things, this	can be used to pipe images to or from  a  server  over
	   the network to implement fast filesystem imaging and	restore.

       o   Support  for	 WIM  integrity	tables.	 Although file data in WIM ar-
	   chives is always checksummed, there can also	be  an	extra  set  of
	   checksums  (an  "integrity table") associated with the WIM file it-
	   self	to provide extra integrity assurance.  The --check  option  to
	   several  wimlib-imagex  commands can	be used	to verify or add these
	   extra checksums.

       o   Fast	incremental backups.  Because  WIM  archives  use  content-ad-
	   dressible  file data, the contents of files are automatically dedu-
	   plicated.  In addition, using the --update-of option	of  wimcapture
	   or  wimappend, you can optimize an image capture so that files that
	   are unmodified based	on timestamps are not even read	from disk.

       o   Windows-specific image metadata support.  When capturing  an	 image
	   of  a  Windows operating system, wimlib will	automatically populate
	   XML metadata	fields such as the Windows OS version details by scan-
	   ning	well-known system files.

       o   WIMBoot  support.   On  Windows 8.1 and later, files	can be "exter-
	   nally backed" by a WIM archive with the help	of Microsoft's Windows
	   Overlay Filesystem (WOF) filter driver.  With the --wimboot option,
	   wimapply will extract "pointer files" to  the  WIM  archive	rather
	   than	the files themselves.

       o   VSS snapshot	support.  On Windows, wimcapture or wimappend with the
	   --snapshot option will automatically	create a temporary  VSS	 snap-
	   shot	 and  capture  the image from it.  This	can be used to image a
	   "live" Windows system.

       o   Long	path support on	Windows.  wimlib-imagex	can capture and	 apply
	   files  with paths exceeding the MAX_PATH (260 character) limitation
	   of the Win32	subsystem.

       o   Non-Administrator support on	Windows.  You  can  run	 wimlib-imagex
	   without Administrator rights, subject to some limitations.

       The following options work for all wimlib-imagex	commands:

	     Display the help, then exit.

	     Display the version and legal information,	then exit.

	     Suppress informational and	progress messages.

       By  default, the	case sensitivity of wimlib-imagex differs somewhat be-
       tween UNIX-like systems and Windows.  WIM images	may  (but  usually  do
       not)  have  multiple files with the same	case-insensitive name.	Inter-
       nally, wimlib stores filenames as case-sensitive, but on	Windows	 paths
       actually	provided by the	user for use in	a WIM image (e.g. for extract-
       ing, adding, renaming, or deleting files) will by default be treated as
       case-insensitive	 in order to get the "expected"	behavior. This differs
       from the	default	behavior on UNIX-like systems, where such  paths  will
       be treated as case-sensitive.

       Note  that  with	case insensitivity, a path component may in general be
       ambiguous due to	multiple files or directories having the same case-in-
       sensitive name.	In such	cases, if there	is a file or directory with an
       exactly matching	name, it is chosen; otherwise, one of the  case-insen-
       sitively	matching file or directories is	chosen arbitrarily.

       The  default case sensitivity of	wimlib-imagex can be overridden	by ex-
       plicitly	setting	the environmental  variable  WIMLIB_IMAGEX_IGNORE_CASE
       to  1,  in which	case such paths	will be	treated	case insensitively, or
       0, in which such	paths will be treated case sensitively.

       Regardless of these settings, options and non-path  arguments  must  be
       specified in lower case.

       wimlib-imagex  may  be redistributed and/or modified under the terms of
       the GNU General Public License; either version 3	of the License,	or (at
       your  option)  any  later version.  There is NO WARRANTY, to the	extent
       permitted by law.

       Report bugs to  or  to
       Feedback	and suggestions	are also welcome.

       wimappend(1), wimapply(1), wimcapture(1), wimdelete(1), wimdir(1), wim-
       export(1), wimextract(1), wiminfo(1), wimjoin(1), wimmount(1), wimmoun-
       trw(1),	 wimoptimize(1),   wimsplit(1),	 wimunmount(1),	 wimupdate(1),

wimlib 1.13.0			 November 2018		      WIMLIB-IMAGEX(1)


Want to link to this manual page? Use this URL:

home | help