1WIMMOUNT(1)                      User Commands                     WIMMOUNT(1)
2
3
4

NAME

6       wimmount, wimmountrw, wimunmount - Mount or unmount a WIM image
7

SYNOPSIS

9       wimmount WIMFILE [IMAGE] DIRECTORY [OPTION...]
10       wimmountrw WIMFILE [IMAGE] DIRECTORY [OPTION...]
11       wimunmount DIRECTORY [OPTION...]
12

DESCRIPTION

14       On Linux, the wimmount (equivalently: wimlib-imagex mount) and wimmoun‐
15       trw (equivalently: wimlib-imagex mountrw) commands mount the  specified
16       IMAGE in the Windows Imaging (WIM) archive WIMFILE on the directory DI‐
17       RECTORY using FUSE (Filesystem in Userspace).  wimmount will mount  the
18       image read-only, while wimmountrw will mount the image read-write.
19
20       IMAGE  specifies  the image in WIMFILE to mount.  It may be the 1-based
21       index of an image or the name of an image.  It may be omitted  if  WIM‐
22       FILE  contains  only one image.  You can use wiminfo(1) to list the im‐
23       ages contained in WIMFILE.
24
25       The WIM image can be unmounted using wimunmount (equivalently:  wimlib-
26       imagex  unmount).   Changes made to an image mounted read-write will be
27       discarded unless the --commit flag is provided to wimunmount.
28

DATA AND METADATA SUPPORT

30       WIM images can contain a variety of types of files and  file  metadata,
31       some  of  which  is Windows-specific.  Currently, the mount feature can
32       translate some, but not all, Windows  concepts  to  Linux  equivalents.
33       Briefly, the following features are supported (read/write):
34
35       •   Hard links
36
37       •   Symbolic  links.   Native Windows symbolic links and junctions in a
38           mounted WIM image will automatically be translated into  UNIX  sym‐
39           bolic links, potentially with their targets fixed to be valid given
40           the actual mountpoint directory.  UNIX symbolic links created in  a
41           read-write  mounted WIM image will automatically be translated into
42           native Windows symbolic links.
43
44       •   Named data streams (mostly).  See the --streams-interface option.
45
46       In addition, standard UNIX file permissions (owner,  group,  and  mode)
47       and special files are supported if the --unix-data option is used.
48
49       However,  the  following  features  are  unsupported and not exposed in
50       mounted images:
51
52       •   Windows security descriptors.  New files are not given security de‐
53           scriptors.
54
55       •   DOS  names  (8.3 names) (short names).  New files are not given DOS
56           names.
57
58       •   Windows file attributes.  New files are assigned default attributes
59           based on the UNIX file mode bits.
60
61       •   Object IDs.  New files are not given object IDs.
62
63       •   EFS-encrypted  files.   The  files  themselves  will  be visible in
64           mounted WIM images but their data will not be available.
65
66       •   Extended attributes.  Although wimlib supports WIM images  contain‐
67           ing  extended  attributes, these are not yet exposed in mounted WIM
68           images.  (This may be implemented in the future,  though  it  would
69           conflict with the use of extended attributes to expose Windows con‐
70           cepts like named data streams.)
71

SPLIT WIMS

73       You may use wimmount to mount an image  from  a  split  WIM  read-only.
74       However, you may not mount an image from a split WIM read-write.
75
76       The  WIMFILE  argument  must  specify  the first part of the split WIM,
77       while the additional parts of the split WIM must be specified in one or
78       more  --ref="GLOB" options.  Since globbing is built into the --ref op‐
79       tion, typically only one --ref option is necessary.  For  example,  the
80       names for the split WIM parts usually go something like:
81
82              mywim.swm
83              mywim2.swm
84              mywim3.swm
85              mywim4.swm
86              mywim5.swm
87
88       To mount the first image of this split WIM to the directory "dir", run:
89
90              wimmount mywim.swm 1 dir --ref="mywim*.swm"
91

NOTES

93       Availability: Mounting WIM images is only supported on Linux-based sys‐
94       tems.  These commands will not work on other  platforms.   Furthermore,
95       the library cannot have been configured --without-fuse.
96
97       Multiple  mounts:  You  are  free  to mount many WIM images at the same
98       time, provided that there are not two images  mounted  read-write  from
99       the same file at the same time.
100
101       Appends  vs. rebuilds: By default, changes to a read-write WIM are made
102       in-place by appending to the WIM.  This is  nice  for  big  WIM  files,
103       since  the  entire  file  doesn't  have  to  be rebuilt to make a small
104       change.  But, if you are making many changes to  a  read-write  mounted
105       WIM,  especially  deleting  large files, it is suggested to provide the
106       --rebuild option to wimunmount to force the WIM to be rebuilt, or  else
107       run wimoptimize afterwards.
108
109       ESD  files (solid WIMs): You can mount version 3584 WIMs, which usually
110       contain LZMS-compressed solid resources and may carry the .esd file ex‐
111       tension  rather  than  .wim.   However, such files are not designed for
112       random access, so reading data from them when mounted may be very slow.
113       In  addition, .esd files downloaded directly by the Windows 8 web down‐
114       loader have encrypted segments, and wimlib cannot mount such files  un‐
115       til they are first decrypted.
116

MOUNT OPTIONS

118       --check
119             Before mounting the WIM image, verify the integrity of the WIM if
120             it contains extra integrity information.
121
122       --streams-interface=INTERFACE
123             This option is inspired by the ntfs-3g(8) filesystem driver.   It
124             controls  how  named  data  streams  (also called "alternate data
125             streams") in WIM files are made available.
126
127             If "none", it will be impossible to read or write the named  data
128             streams.
129
130             If  "xattr"  (default),  named  data  streams  will be accessible
131             through extended file attributes, unless this  support  was  dis‐
132             abled  when  compiling wimlib.  The named data streams may be ac‐
133             cessed through extended attributes named "user.*", where the * is
134             the  name  of  the  named  data stream.  See setfattr(1) and get‐
135             fattr(1).  Note that this is not an ideal interface, since  named
136             data  streams may be larger than the maximum allowed extended at‐
137             tribute size.
138
139             If "windows", the named data streams will be accessible by speci‐
140             fying the filename, then a colon, then the name of the named data
141             stream; for example, "myfile:mystream".
142
143       --debug
144             Turn on debugging information printed by the FUSE library, and do
145             not fork into the background.
146
147       --ref="GLOB"
148             File  glob of additional WIMs or split WIM parts to reference re‐
149             sources from.  See SPLIT_WIMS.  This option can be specified mul‐
150             tiple times.  Note: GLOB is listed in quotes because it is inter‐
151             preted by wimlib-imagex and may need  to  be  quoted  to  protect
152             against shell expansion.
153
154       --staging-dir=DIR
155             Store  temporary staging files in a subdirectory of the directory
156             DIR.  Only valid for wimmountrw.
157
158       --unix-data
159             Honor UNIX-specific metadata that was captured by wimcapture with
160             the  --unix-data  option.   By default, wimmount (and wimmountrw)
161             will ignore both Windows-style security descriptors and UNIX-spe‐
162             cific  metadata.   In this default mode, all files will simply be
163             owned by the user running  wimmount  and  will  have  mode  0777.
164             (They will still not be accessible to other users unless you also
165             specify --allow-other.)  If you instead provide  the  --unix-data
166             option,  these  default  permissions will be overridden on a per-
167             file basis with the UNIX-specific metadata  from  the  WIM  image
168             when  available,  and  in  the case of wimmountrw it will also be
169             possible to change the UNIX permissions on files in  the  mounted
170             image using the standard UNIX tools and functions, and (if appro‐
171             priately privileged) create UNIX special  files  such  as  device
172             nodes.
173
174       --allow-other
175             Pass  the  allow_other  option to the FUSE mount.  See mount.fuse
176             (8).  Note: to do this as a non-root user, user_allow_other needs
177             to be specified in /etc/fuse.conf.
178

UNMOUNT OPTIONS

180       --commit
181              Update  the  WIM file with the changes that have been made.  Has
182              no effect if the mount is read-only.
183
184       --force
185              In combination with --commit, force the WIM image to be  commit‐
186              ted  even  if  there are open file descriptors to the WIM image.
187              Any such file descriptors will be immediately  closed,  and  the
188              WIM image will be committed and unmounted.
189
190       --check
191              If committing changes to the WIM, include extra integrity infor‐
192              mation, even if it was not present before.
193
194       --rebuild
195              Rebuild the entire WIM rather than appending any new data to the
196              end of it.  Rebuilding the WIM is slower, but will save a little
197              bit of space that would otherwise be left as a hole in the  WIM.
198              Even  more  space will be saved if the read-write mount resulted
199              in streams being deleted from the WIM.  Also see
200
201       --new-image
202              In combination with --commit for  a  read-write  mounted  image,
203              causes  the modified image to be committed as a new, unnamed im‐
204              age appended to the WIM archive.  The original image will be un‐
205              modified.
206

IMPLEMENTATION DETAILS

208       Since  a WIM is an archive and not a filesystem per se, wimmountrw cre‐
209       ates a temporary staging directory to contain files that are created or
210       modified.   This  directory is located in the same directory as WIMFILE
211       by default, but the location can be set using the --staging-dir option.
212       When the filesystem is unmounted with --commit, the WIM is modified in-
213       place (or rebuilt completely with --rebuild), merging  in  the  staging
214       files as needed.  Then, the temporary staging directory is deleted.
215
216       wimunmount  runs in a separate process from the process that previously
217       ran wimmount.  When unmounting a  read-write  mounted  WIM  image  with
218       --commit,  these  two processes communicate using a POSIX message queue
219       so that the unmount  process  can  track  the  progress  of  the  mount
220       process.  See src/mount_image.c in the source code for details.
221

SEE ALSO

223       wimlib-imagex(1)
224
225
226
227wimlib 1.13.5                    December 2021                     WIMMOUNT(1)
Impressum