Vmware Disk Mount User'S Guide: Virtual Disk Development Kit
Vmware Disk Mount User'S Guide: Virtual Disk Development Kit
Vmware Disk Mount User'S Guide: Virtual Disk Development Kit
You can find the most up-to-date technical documentation on the VMware Web site at:
http://www.vmware.com/support/
The VMware Web site also provides the latest product updates.
If you have comments about this documentation, submit your feedback to:
[email protected]
© 2008 VMware, Inc. All rights reserved. Protected by one or more U.S. Patent Nos. 6,397,242, 6,496,847, 6,704,925, 6,711,672,
6,725,289, 6,735,601, 6,785,886, 6,789,156, 6,795,966, 6,880,022, 6,944,699, 6,961,806, 6,961,941, 7,069,413, 7,082,598,
7,089,377, 7,111,086, 7,111,145, 7,117,481, 7,149,843, 7,155,558, 7,222,221, 7,260,815, 7,260,820, 7,269,683, 7,275,136,
7,277,998, 7,277,999, 7,278,030, 7,281,102, 7,290,253, 7,356,679, 7,409,487, 7,412,492, 7,412,702, 7,424,710, and 7,428,636;
patents pending.
VMware, the VMware “boxes” logo and design, Virtual SMP, and VMotion are registered trademarks or trademarks of
VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks
of their respective companies.
VMware, Inc.
3401 Hillview Ave.
Palo Alto, CA 94304
www.vmware.com
2 VMware, Inc.
Contents
About This Book 5
Using VMware Disk Mount 7
Limitations on Mounting Virtual Disks 7
Running VMware Disk Mount on a Windows Host 8
Log Files 8
Examples Using VMware Disk Mount on a Windows Host 9
Running VMware Disk Mount on a Linux Host 10
Log File 10
Examples Using VMware Disk Mount on a Linux Host 11
Installing the Fuse Package 12
VMware, Inc. 3
VMware Disk Mount User’s Guide
4 VMware, Inc.
About This Book
This VMware® manual, the VMware Disk Mount User’s Guide, provides an introduction to using the
vmware-mount command‐line utility.
Revision History
This book is revised with each release of the product or when necessary. A revised version can contain minor
or major changes. Table P‐1 summarizes the significant changes in each version of this guide.
20050408 First version of the VMware Disk Mount User’s Guide.
20070607 Update with support for Linux hosts and remote virtual disks.
20080122 New option for inventory path of the virtual machine.
20080625 Updated support information and Fuse mount.
20080717 Corrected information about snapshots and /p option.
20080915 Added information about Windows and Linux log files.
Intended Audience
This book is intended for anyone who uses VMware Disk Mount. Users typically include people who do
software development and testing or work with multiple operating systems or computing environments:
system administrators, application developers, QA engineers, and anyone who wants to create, manage, and
modify virtual disk files from scripts or at the command line.
Documentation Resources
To access the current versions of VMware API and SDK documentation, go to:
http://www.vmware.com/support/pubs/sdk_pubs.html
To access the current versions of other VMware manuals, go to:
http://www.vmware.com/support/pubs
Documentation Feedback
VMware welcomes your suggestions for improving our documentation. Send your feedback to:
VMware, Inc. 5
VMware Disk Mount User’s Guide
Online Support
You can submit questions or post comments to the Developer Community SDKs and APIs forum, which is
monitored by VMware technical support and product teams. To access the forum, go to:
http://communities.vmware.com/community/developer
Support Offerings
To find out how VMware support offerings can help meet your business needs, go to:
http://www.vmware.com/support/services
http://www.vmware.com/services/
6 VMware, Inc.
Using VMware Disk Mount
VMware Disk Mount is a utility for Windows and Linux hosts that allows you to mount an unused virtual disk
as a separate drive or partition without needing to connect to the virtual disk from within a virtual machine.
You can mount specific volumes of a virtual disk if the virtual disk is partitioned.
After you mount a virtual disk, you can read from and write to the mounted virtual disk as if it were a separate
file system with its own drive letter or mount point on your computer. For example, you could scan the disk
for viruses or transfer files between the host system and a powered off virtual machine. When you are finished
using a mounted virtual disk, you should unmount it so the virtual machine can use its virtual disk again.
This chapter contains the following sections:
“Limitations on Mounting Virtual Disks” on page 7.
“Running VMware Disk Mount on a Windows Host” on page 8.
“Running VMware Disk Mount on a Linux Host” on page 10.
You cannot mount a virtual disk that is currently being used by a running or suspended virtual machine.
You can only mount disks that are in a powered off virtual machine, or disks that are not are not associated
with a virtual machine.
You can mount and read Windows virtual disks on Windows hosts (with at least one NTFS volume) or
Linux virtual disks on Linux hosts. Cross‐mounting is restricted as described below.
You can use Disk Mount with virtual disks created by VMware ESX Server 3.x and 2.x (preallocated disks
only), VMware Workstation 6, 5, or 4, VMware Player, VMware ACE, VMware Fusion, VMware Server 2
or 1, and VMware GSX Server 3.x and 2.5. However you cannot mount encrypted virtual disks.
You cannot mount a virtual disk if any of its .vmdk files are compressed or have read‐only permissions.
Change these attributes before mounting the virtual disk.
On Windows hosts, you must mount virtual disks as drive D: or greater. You cannot specify a drive letter
already in use on the host.
On Windows hosts, you can mount volumes formatted with FAT (12/16/32) or NTFS only. If the virtual
disk has a mix of partitions or volumes where, for example, a partition is unformatted or is formatted with
a Linux operating system and another partition is formatted with a Windows operating system, you can
mount the Windows partition with Disk Mount.
If you specify a virtual disk with snapshots, this command locates and mounts the last snapshot. On
Windows you can mount previous snapshots read‐only. On Linux you cannot mount previous snapshots.
CAUTION When you have a snapshot mounted with vmware-mount, do not revert to a previous snapshot
using any other VMware interface. Doing so makes it impossible to unmount the partition.
VMware, Inc. 7
VMware Disk Mount User’s Guide
Disk Mount runs from the command line on any version of Windows 2000, Windows XP, Windows Server
2003, or Windows Vista, as well as any version of Linux that is supported as a host for VMware Workstation.
Disk Mount on Linux requires the Fuse package. See “Installing the Fuse Package” on page 12.
The Disk Mount command syntax is:
vmware-mount [driveletter:] [path-to-vmdk] [options]
Use driveletter: to specify the drive letter where you want to mount or unmount a virtual disk. Examples
in this section use the J: drive and nearby letters.
The path-to-vmdk specifies the location of a virtual disk that you want to mount or query for information,
C:\Documents and Settings\<user>\My Documents\My Virtual Machines\<VMname>\<VMname>.vmdk
for example, where <VMname> is the name of a virtual machine.
With no arguments, vmware-mount displays mounted drive mappings, if any. This is similar to the /L option.
Possible options are:
Option Definition
/v:N Mounts volume N of a virtual disk. N defaults to 1.
/d Given a drive letter, deletes the mapping to the virtual disk drive volume.
/f Forcibly deletes the mapping to a virtual disk drive volume. Use this option when a
technical error or a correctable condition such as open file handles prevents Disk Mount
from unmounting the drive. Otherwise stop accessing the volume and use /d.
/p Given path-to-vmdk, displays the partitions (volumes) on the virtual disk. Local only.
/L Displays all virtual disks mounted on the host computer. Use without other options.
/m:w Mounts disk in read and write mode, the default.
/m:n Mounts disk in non‐persistent read‐only mode. Allows mounting of snapshot disk.
/? Displays vmware-mount usage information.
The options for remote virtual disks are:
Option Definition
/i:InventoryPath Specifies inventory path on the VirtualCenter that manages this virtual disk.
/h:HostName Specifies the name or IP address of the ESX Server to access the managed virtual disk.
/u:UserName Specifies user name for the ESX Server.
/s:Password Specifies the password for the ESX Server.
/P:Port Specifies the Port number used to communicate with the server. This is optional and
defaults to 902.
Log Files
On Windows the diagnostic log files for each <user> who ran vmware-mount are located here:
C:\Documents and Settings\<user>\Local Settings\Temp\vmware-<user>-<nnnn>/vmount.log
C:\Documents and Settings\<user>\Local Settings\Temp\vmware-<user>-<nnnn>/vmount-client.log
8 VMware, Inc.
Using VMware Disk Mount
Assuming shortcut C:\My Virtual Machines and virtual machine Windows98, type this command:
vmware-mount J: "C:\My Virtual Machines\Windows98\Windows98.vmdk"
Type a command in this form, where <VMname> is the guest OS name, <inv> is the inventory path, <server>
is an ESX server or VirtualCenter, <user> is a privileged user, and <password> is the account password:
vmware-mount K: "[storage1] <VMname>/<VMname>.vmdk" /i:<inv> /h:<server> /u:<user> /s:<password>
Here are two examples, connecting through ESX Server and VirtualCenter:
vmware-mount K: “[storage1] WinXP/WinXP.vmdk” /i:ha-datacenter/vm/WinXP /h:esx3 /u:root /s:secret
vmware-mount K: “[storage1] WinXP/WinXP.vmdk” /i:Datacenter/vm/WinXP /h:vc2 /u:admin /s:secretv
NOTE ESX path names are case‐sensitive.
Use the /d option:
vmware-mount J: /d
List the volume partitions, then decide which to mount:
vmware-mount "C:\My Virtual Machines\Windows98\Windows98.vmdk" /p
vmware-mount J: "C:\My Virtual Machines\Windows98\Windows98.vmdk" /v:2
Use the /L option, with sample output shown below:
vmware-mount /L
Currently mounted volumes:
J:\ => C:\My Virtual Machines\Windows98\Windows98.vmdk
K:\ => [storage1]WindowsXP2/WindowsXP2.vmdk
Using drive letters from the examples above, type:
vmware-mount J: /d
vmware-mount K: /d
Inventory Path
On an ESX server with the /i option, specify InventoryPath as:
/i:ha-datacenter/vm/<VMpathname as read from inventory tree in VC client UI>
On VirtualCenter with the /i option, specify InventoryPath as:
/i:<Path to your datacenter>/vm/<VMpathname as read from inventory tree in VC client UI>
The path to your datacenter is as read from the tree display in the VirtualCenter UI.
VMware, Inc. 9
VMware Disk Mount User’s Guide
VMware Disk Mount for Linux offers two modes for mounting disks:
1 You can mount a specific partition of a virtual disk, either local or remote.
The command syntax for mounting a specific partition is as follows (default partitionNumber is 1):
vmware-mount /path/to/disk [partitionNumber] /mount/point
2 You can mount a flat‐file representation of an entire virtual disk.
The command syntax for mounting a flat‐file representation is:
vmware-mount -f /path/to/disk /mount/point
Disk Mount includes a number of other options to use with virtual disks and mount points. The command
syntax for most options is either of the following:
vmware-mount [option] [/path/to/disk]
vmware-mount [option] [/mount/point]
In the following list of options, <diskID> is an identifier of the form username@hostname:/path/to/disk
for remote disks, or just the /path/to/disk for local disks. Options that mount a remote disk also require the
-h, -u, -F, and possibly -v options. The -v option is required when connecting to a Virtual Center.
Option Definition
-p <diskID> Displays the partitions on a virtual disk.
-l <diskID> Displays all mounted partitions a virtual disk.
-L Displays all virtual disks mounted on the host computer.
-d <mountPoint> Cleanly unmounts this partition, closing disk if it is the last partition.
-k <diskID> Unmounts all partitions on a virtual disk and closes the virtual disk.
-K <diskID> Forcibly unmounts all partitions on a virtual disk and closes all virtual disks.
-x Unmounts all partitions and closes all virtual disks.
-X Forcibly unmounts all partitions and closes all virtual disks.
The options for remote virtual disks are:
Option Definition
-v InventoryPath Specifies inventory path on the VirtualCenter that manages this virtual disk
-h HostName Specifies the name or IP address of the ESX Server to access the managed virtual disk.
-u UserName Specifies user name for the ESX Server.
-F PasswordFile Specifies the path name to a plain text file containing the password for the ESX Server.
-P Port Specifies the Port number used to communicate with the server. This is optional and
defaults to 902.
Log File
On Linux the diagnostic log files for each <user> who ran vmware-mount are located here:
/tmp/vmware-<user>/fuseMount.log
10 VMware, Inc.
Using VMware Disk Mount
Assuming directory /vmware/guest and virtual machine RHEL4, type this command, which produces the
following output:
vmware-mount -p /vmware/guest/RHEL4/RHEL4.vmdk
Volume 1 : 102 MB, Linux
Volume 2 : 19862 MB, Linux
Volume 3 : 510 MB, Linux swap
To mount the second partition from above, type this command:
vmware-mount /vmware/guest/RHEL4/RHEL4.vmdk 2 /mnt/rhel4
Type a command in this form, where <VMname> is the guest OS name, <inv> is the inventory path, <srv> is
an ESX server or VirtualCenter, <user> is a privileged user, and <pfile> is a file containing the password:
vmware-mount -v <inv> -h <srv> -u <user> -F <pfile> "[storage1] <VMname>/<VMname>.vmdk" /mount/pt
Here are two examples, connecting through ESX Server and VirtualCenter:
vmware-mount -i ha-datacenter/vm/RH5 -h esx3 -u root -F pwf "[storage1] RH5/RH5.vmdk" /mnt/rh5
vmware-mount -i Datacenter/vm/RH5 -h vc2 -u admin -F pwf "[storage1] RH5/RH5.vmdk" /mnt/rh5
NOTE ESX path names are case‐sensitive.
Use the -f option:
vmware-mount -f /vmware/guest/SUSE10/SUSE10.vmdk /mnt/suse10
Use the -L option, with sample output shown below:
vmware-mount -L
Disks with mounted partitions:
/vmware/guest/RHEL4/RHEL4.vmdk partition2 /mnt/rhel4
[email protected]:[storage1]RHEL5/RHEL5.vmdk /mnt/rhel5
/vmware/guest/SUSE10/SUSE10.vmdk /mnt/suse10/flat
You can use the -d option and supply a mount point:
vmware-mount -d /mnt/rhel4
You can also use the -k option and supply a disk ID:
vmware-mount -k [email protected]:[storage1]RHEL5/RHEL5.vmdk
You may also use the -x or -X option to unmount, or force‐unmount, all partitions.
Inventory Path
On an ESX server with the /i option, specify InventoryPath as:
/i:ha-datacenter/vm/<VMpathname as read from inventory tree in VC client UI>
On VirtualCenter with the /i option, specify InventoryPath as:
/i:<Path to your datacenter>/vm/<VMpathname as read from inventory tree in VC client UI>
The path to your datacenter is as read from the tree display in the VirtualCenter UI.
VMware, Inc. 11
VMware Disk Mount User’s Guide
Run the modprobe -l command:
modprobe -l fuse
/lib/modules/2.6.22-14-generic/kernel/fs/fuse/fuse.ko
If the second line showing fuse.ko appears, stop.
If no output appears, proceed to one of the sections below.
Obtain the Fuse package on Linux systems that use APT installer as follows:
sudo apt-get install fuse-utils
Now you can run the vmware-mount command as described in this manual.
1 Download Fuse software from the http://fuse.sourceforge.net Web site.
2 Unpack the software and change to the unpacked directory:
tar -zxf <FusePackage>.tar.gz
cd <FusePackage>
3 Configure the makefile for your system and run make to compile it:
./configure
make
4 As superuser, install the package (this puts it in /usr/local/lib):
sudo make install
5 If /usr/local/lib is not listed in /etc/ld.so.conf or an included file, insert a line for it and run the
ldconfig command. Alternatively, modify your LD_LIBRARY_PATH environment.
sudo edit /etc/ld.so.conf
sudo ldconfig
6 Run the modprobe command to insert Fuse module into the kernel:
sudo modprobe fuse
Now you can run the vmware-mount command as described in this manual.
12 VMware, Inc.