5 guestmount - Mount a guest filesystem on the host using FUSE and libguestfs
9 guestmount [--options] -a disk.img -m device [--ro] mountpoint
13 You must I<not> use C<guestmount> in read-write mode on live virtual
14 machines. If you do this, you risk disk corruption in the VM.
18 The guestmount program can be used to mount virtual machine
19 filesystems and other disk images on the host. It uses libguestfs for
20 access to the guest filesystem, and FUSE (the "filesystem in
21 userspace") to make it appear as a mountable device.
23 Along with other options, you have to give at least one device (I<-a>
24 option) and at least one mountpoint (I<-m> option). How this works is
25 better explained in the L<guestfish(1)> manual page, or you can use
26 L<virt-inspector(1)> and/or the the wrapper script
27 C<guestmount-wrapper> to help you.
29 FUSE lets you mount filesystems as non-root. The mountpoint must be
30 owned by you, and the filesystem will not be visible to any other
31 users unless you make certain global configuration changes to
32 C</etc/fuse.conf>. To unmount the filesystem, use the C<fusermount -u>
37 For a typical Windows guest which has its main filesystem on the
40 guestmount -a windows.img -m /dev/sda1 --ro /mnt
42 For a typical Linux guest which has a /boot filesystem on the first
43 partition, and the root filesystem on a logical volume:
45 guestmount -a linux.img -m /dev/VG/LV -m /dev/sda1:/boot --ro /mnt
47 To get L<virt-inspector(1)> to do the hard work of detecting guest
50 guestmount $(virt-inspector --ro-fish MyGuest) /mnt
52 (or use --fish if you don't want it to be a read only mount). The
53 option is called I<--ro-fish> or I<--fish> because these parameters
54 are compatible with L<guestfish(1)>.
56 If you want to trace the libguestfs calls but without excessive
57 debugging, we recommend:
59 guestmount [-a ... -m ...] --trace /mnt
61 If you want to debug the program, we recommend:
63 guestmount [-a ... -m ...] --trace --verbose /mnt
69 =item B<-a image> | B<--add image>
71 Add a block device or virtual machine image.
73 =item B<--dir-cache-timeout N>
75 Set the readdir cache timeout to I<N> seconds, the default being 60
76 seconds. The readdir cache [actually, there are several
77 semi-independent caches] is populated after a readdir(2) call with the
78 stat and extended attributes of the files in the directory, in
79 anticipation that they will be requested soon after.
81 There is also a different attribute cache implemented by FUSE
82 (see the FUSE option I<-o attr_timeout>), but the FUSE cache
83 does not anticipate future requests, only cache existing ones.
87 Display help on special FUSE options (see I<-o> below).
91 Display brief help and exit.
93 =item B<-m dev[:mnt]> | B<--mount dev[:mnt]>
95 Mount the named partition or logical volume on the given mountpoint
96 B<in the guest> (this has nothing to do with mountpoints in the host).
98 If the mountpoint is omitted, it defaults to C</>. You have to mount
101 =item B<-n> | B<--no-sync>
103 By default, we attempt to sync the guest disk when the FUSE mountpoint
104 is unmounted. If you specify this option, then we don't attempt to
105 sync the disk. See the discussion of autosync in the L<guestfs(3)>
108 =item B<-o option> | B<--option option>
110 Pass extra options to FUSE.
112 To get a list of all the extra options supported by FUSE, use the
113 command below. Note that only the FUSE I<-o> options can be passed,
114 and only some of them are a good idea.
116 guestmount --fuse-help
118 Some potentially useful FUSE options:
122 =item B<-o allow_other>
124 Allow other users to see the filesystem.
126 =item B<-o attr_timeout=N>
128 Enable attribute caching by FUSE, and set the timeout to I<N> seconds.
130 =item B<-o kernel_cache>
132 Allow the kernel to cache files (reduces the number of reads
133 that have to go through the L<guestfs(3)> API). This is generally
134 a good idea if you can afford the extra memory usage.
136 =item B<-o uid=N> B<-o gid=N>
138 Use these options to map all UIDs and GIDs inside the guest filesystem
139 to the chosen values.
143 =item B<-r> | B<--ro>
145 Add devices and mount everything read-only. Also disallow writes and
146 make the disk appear read-only to FUSE.
148 This is highly recommended if you are not going to edit the guest
149 disk. If the guest is running and this option is I<not> supplied,
150 then there is a strong risk of disk corruption in the guest. We try
151 to prevent this from happening, but it is not always possible.
155 Enable SELinux support for the guest.
159 Trace libguestfs calls (to stderr).
161 This also stops the daemon from forking into the background.
163 =item B<-v> | B<--verbose>
165 Enable verbose messages from underlying libguestfs.
167 =item B<-V> | B<--version>
169 Display the program version and exit.
176 L<virt-inspector(1)>,
181 L<http://libguestfs.org/>,
182 L<http://fuse.sf.net/>.
186 Richard W.M. Jones (C<rjones at redhat dot com>)
190 Copyright (C) 2009 Red Hat Inc.
191 L<http://libguestfs.org/>
193 This program is free software; you can redistribute it and/or modify
194 it under the terms of the GNU General Public License as published by
195 the Free Software Foundation; either version 2 of the License, or
196 (at your option) any later version.
198 This program is distributed in the hope that it will be useful,
199 but WITHOUT ANY WARRANTY; without even the implied warranty of
200 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
201 GNU General Public License for more details.
203 You should have received a copy of the GNU General Public License
204 along with this program; if not, write to the Free Software
205 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.