Split WIM mount and split WIM documentation
[wimlib] / doc / imagex.1.in
1 .TH IMAGEX 1 "September 2012" "imagex (wimlib @VERSION@)" "User Commands"
2 .SH NAME
3 imagex \- Create, modify, extract, mount, or unmount a WIM (Windows Imaging Format) archive
4 .SH SYNOPSIS
5 \fBimagex append\fR \fIarguments...\fR
6 .br
7 \fBimagex apply\fR \fIarguments...\fR
8 .br
9 \fBimagex capture\fR \fIarguments...\fR
10 .br
11 \fBimagex delete\fR \fIarguments...\fR
12 .br
13 \fBimagex dir\fR \fIarguments...\fR
14 .br
15 \fBimagex export\fR \fIarguments...\fR
16 .br
17 \fBimagex info\fR \fIarguments...\fR
18 .br
19 \fBimagex join\fR \fIarguments...\fR
20 .br
21 \fBimagex mount\fR \fIarguments...\fR
22 .br
23 \fBimagex mountrw\fR \fIarguments...\fR
24 .br
25 \fBimagex split\fR \fIarguments...\fR
26 .br
27 \fBimagex unmount\fR \fIarguments...\fR
28
29 .SH DESCRIPTION
30 \fBimagex\fR is able to deal with archives in the Windows Imaging Format (.wim
31 files). Its interface is meant to be similar to Microsoft's imagex.exe program.
32
33 To do its work, \fBimagex\fR uses \fBwimlib\fR, a library which provides
34 interfaces for manipulating WIM archives.  You could wimlib in your own programs
35 if you wanted to.  wimlib's public interface is documented.
36
37 See \fBWARNING\fR.
38
39 .SH COMMANDS
40
41 There is a separate manual page for each \fBimagex\fR command.
42
43 .SH SUPPORTED FEATURES
44
45 The following features are currently supported:
46
47 .IP \[bu] 3
48 Create a stand-alone WIM from a directory or NTFS volume (\fBimagex capture\fR)
49 .IP \[bu]
50 Append a directory or NTFS volume onto a stand-alone WIM as a new image (\fBimagex
51 append\fR)
52 .IP \[bu]
53 Apply an image from a stand-alone or split WIM to a directory or NTFS volume
54 (\fBimagex apply\fR)
55 .IP \[bu]
56 Mount an image from a stand-alone or split WIM read-only (\fBimagex mount\fR)
57 .IP \[bu]
58 Mount an image from a stand-alone WIM read-write (\fBimagex mountrw\fR)
59 .IP \[bu]
60 Delete image(s) from a stand-alone WIM (\fBimagex delete\fR)
61 .IP \[bu]
62 Export image(s) from a stand-alone WIM (\fBimagex export\fR)
63 .IP \[bu]
64 Display information about a WIM file (\fBimagex info\fR, \fBimagex dir\fR)
65 .IP \[bu]
66 Change the name or description of an image in the WIM (\fBimagex info\fR)
67 .IP \[bu]
68 Change which image in a WIM is bootable (\fBimagex info\fR)
69 .IP \[bu]
70 Combine split WIMs into one stand-alone WIM (\fBimage join\fR)
71 .IP \[bu]
72 Split a stand-alone WIM into multiple parts (\fBimage split\fR)
73 .IP \[bu]
74 Support for all WIM compression types, both compression and decompression (LZX,
75 XPRESS, and none)
76 .IP \[bu]
77 WIM integrity table is supported (\fB--check\fR option to many commands)
78 .IP \[bu]
79 WIM XML data (parsed and written using \fBlibxml\fR(3))
80
81 .SH UNSUPPORTED FEATURES
82
83 As of version 1.0.0, wimlib supports capturing and applying WIMs directly from
84 NTFS and has much improved support for hard links and symbolic links.  In
85 addition, you may now apply split WIMs and mount them read-only.  I don't think
86 there are many other features that would be worth it to implement.  Besides
87 porting the library to Windows (which I'm not really interested in), the main
88 thing that could use improvement (in my opinion) is that the LZX compression
89 ratio still isn't quite as good as Microsoft's version.  Also, exporting an
90 image from a split WIM could be supported.  Furthermore, if Microsoft updates
91 the WIM format, I'd need to support it, but it looks like the format for Windows
92 8 is the same as that of Windows 7.
93
94 .SH DIFFERENCES FROM MICROSOFT IMAGEX
95
96 While similar to Microsoft's "imagex.exe" program, this program is designed for
97 UNIX-based systems and by the nature of the platform cannot be exactly the same
98 as Microsoft's version.
99
100 In particular, because Microsoft designed the WIM file format to accomodate
101 Windows-specific and NTFS-specific features, we must have two separate image
102 capture and application modes (although the \fBimagex\fR subcommands for the
103 modes are the same): one for general image capture and application, and one for
104 the capture or application of an image specifically from/to an NTFS volume.
105
106 Some features, such as the ability to keep files hard-linked across WIM images
107 when they are extracted from a WIM, are not available in Microsoft's version of
108 imagex.  Also, doesn't seem to be an equivalent of \fBimagex join\fR in
109 Microsoft's version; you would have to use \fBimagex.exe /export\fR, but that
110 doesn't let you export all images at once.  Furthermore, this version of
111 \fBimagex\fR lets you mount an image from a split WIM read-only, while
112 Microsoft's version does not.
113
114 Microsoft's version has some weird limitations, like it won't let you extract a
115 WIM on a shared folder, and it requires some commands to be run only from
116 Windows PE and not from regular Windows.  This version does not have these
117 unusual limitations, although it won't actually run on Windows anyway.
118
119 There are bugs in Microsoft's WIM library and I obviously have not included
120 these bugs in my version; however it's to be expected that despite that fact, my
121 version has more bugs because it's been less widely tested and used.
122
123 Obviously, this version of imagex is free software but Microsoft's version is
124 not.
125
126 .SH WARNING
127
128 Note: \fBwimlib\fR and \fBimagex\fR are experimental.  Use Microsoft's
129 imagex.exe if you have to make sure your WIM files are made "correctly".  Not
130 all features listed under \fBSUPPORTED FEATURES\fR have been thoroughly tested.
131 Feel free to submit a bug report if you find a bug.
132
133 Some parts of the WIM file format are poorly documented or even completely
134 undocumented, so I've just had to do the best I can to read and write WIMs in a
135 way that appears to be compatible with Microsoft's software.
136
137 .SH REPORTING BUGS
138
139 Report bugs to ebiggers3@gmail.com.
140
141 .SH SEE ALSO
142 .BR imagex-append (1),
143 .BR imagex-apply (1),
144 .BR imagex-capture (1),
145 .BR imagex-delete (1),
146 .BR imagex-dir (1),
147 .BR imagex-export (1),
148 .BR imagex-info (1),
149 .BR imagex-join (1),
150 .BR imagex-mount (1),
151 .BR imagex-mountrw (1),
152 .BR imagex-split (1),
153 .BR imagex-unmount (1),
154