Vmkfstools command line options explained

Author: NetworkAdminKB.com
Created: 2010-09-12
Modified: 2010-09-12

Information:

Below is the vmkfstools command line syntax followed by the vmkfstools manual (man vmkfstools) available from ESX Server 3.5.

 

Vmkfstools Syntax

vmkfstools -C --createfs vmfs3

-b --blocksize #[mMkK]

 -S --setfsname fsName

           -Z --extendfs extension-partition

   deviceName

           -P --queryfs -h --humanreadable

           -T --tovmfs3

               -x --upgradetype [zeroedthick|eagerzeroedthick|thin]

           -u --upgradefinish

   vmfsPath

 

OPTIONS FOR VIRTUAL DISKS:

vmkfstools -c --createvirtualdisk #[gGmMkK]

               -d --diskformat [zeroedthick|

                                eagerzeroedthick|

                                thick|

                                thin]

               -a --adapterType [buslogic|lsilogic]

           -w --writezeros

           -j --inflatedisk

           -U --deletevirtualdisk

           -E --renamevirtualdisk srcDisk

           -i --clonevirtualdisk srcDisk

               -d --diskformat [rdm:<device>|rdmp:<device>|

                                raw:<device>|thin|2gbsparse|

                                monoflat|monosparse]

           -X --extendvirtualdisk #[gGmMkK]

           -M --migratevirtualdisk

           -r --createrdm /vmfs/devices/disks/...

           -q --queryrdm

           -z --createrdmpassthru /vmfs/devices/disks/...

           -v --verbose #

           -g --geometry

           -J --miscop [setuuid | getuuid]

   vmfsPath

 

OPTIONS FOR DEVICES:

vmkfstools -s --scan adapterName

           -L --lock [reserve|release|lunreset|targetreset|busreset] /vmfs/devices/disks/...

 


VMKFSTOOLS                 VMware ESX Server Manual                 VMKFSTOOLS

 

NAME

     vmkfstools - VMware ESX Server file system management tool

 

SYNOPSIS

     vmkfstools OPTIONS

     vmkfstools OPTIONS PARTITION

     vmkfstools OPTIONS DEVICE

     vmkfstools OPTIONS PATH

 

COPYRIGHT

     VMware ESX Server is Copyright 2000-2007 VMware, Inc. All rights

     reserved.

 

DESCRIPTION

     vmkfstools is a program for creating and manipulating virtual disks, file

     systems, logical volumes and physical storage devices on the VMware ESX

     Server. It supports the creation of a VMware ESX Server File System

     (VMFS) on a partition of a disk, and the management of files (such as

     virtual disks) stored on VMFS.

 

     OPTIONS is one or more command-line options that specify the operation.

     The file or VMFS file system being manipulated may be specified after the

     options by a relative or absolute file path name in the /vmfs hierarchy.

 

     The PARTITION argument is used for specifying partitions, and should be

     of the form vmhbaA:T:L:P where A, T, L and P are integers representing

     adapter, target, LUN and partition respectively. The partition digit must

     be greater than zero.  For example, vmhba0:2:3:1 refers to the first par-

     tition on LUN 3, target 2, HBA 0.

 

     The DEVICE argument is used for specifying devices, and should be a path

     name beginning with /vmfs/devices, which is the mount point of the device

     file system. There are sub-mounts for each device class. For example,

     /vmfs/devices/disks for local or SAN-based disks, /vmfs/devices/lvm for

     VMKernel logical volumes, /vmfs/devices/generic for generic SCSI devices

     like tape drives, etc.

 

     The PATH argument is used for specifying a VMFS file system or file, and

     should be an absolute or relative path that names a directory or a file

     under /vmfs.  For example, a VMFS file system could be specified via a

     path such as:

 

     /vmfs/volumes/<file_system_UUID> or /vmfs/volumes/<file_system_label>

     A VMFS file would be specified via a path such as:

 

     /vmfs/volumes/<file_system_label|file_system_UUID>/[dir]/myDisk.vmdk or

     myDisk.vmdk

 

     if the current working directory is the parent directory of myDisk.vmdk.

 

FILE SYSTEM OPTIONS

     The long and short forms of options, shown here listed together, are

     equivalent.

 

     -C, --createfs vmfs3

     -b, --blocksize #[mMkK]

     -S, --setfsname fsName

         Create a VMFS file system on the specified partition,

         e.g. vmhba1:0:0:1. The partition becomes the file system's head

         partition. The file block size can be specified via the '-b'

         option. The default file block size is 1MB. The file block size

         must be either 1MB, 2MB, 4MB or 8MB. In ESX Server 3, VMFS-2 file

         systems are read-only in that users will not be allowed to create

         or modify them. VMFS-3 file systems will not be accessible from

         ESX 2.x hosts.

 

         The -S option sets the label of the VMFS file system, and can only

         be used in conjunction with the '-C' option. This label can then

         be used to specify a VMFS file system in subsequent vmkfstools

         commands or in a virtual machine configuration file. The label

         will also appear in a listing produced by 'ls -l /vmfs/volumes'

         as a symbolic link to the VMFS file system. VMFS labels can be up

         to 128 characters long. They cannot contain leading or trailing

         spaces. After creating the file system, the label can be changed

         using the command 'ln -sf /vmfs/volumes/<FS UUID>

         /vmfs/volumes/<New label>'.

 

     -Z, --extendfs extension-partition

         Extend an existing VMFS-3 file system with the specified head

         partition by adding another partition designated by

         'extension-partition'. A VMFS-3 file system can have at most 32

         partitions. This option will not work on VMFS-2 file systems as

         they are read-only in ESX Server 3.

 

     -P, --queryfs

     -h, --human-readable

         List the attributes of a VMFS file system when used on any file or

         directory of a VMFS file system. It lists the VMFS version number,

         the number of partitions constituting the specified VMFS file

         system, the file system label (if any), file system UUID,

         available space, and a listing of the device names of all the

         partitions constituting the file system. If partitions backing

         VMFS file system go offline then the number of partitions and

         available space reported change accordingly. The 'h' option

         causes sizes to be printed in human-readable format (such as 5k,

         12.1M, or 2.1G).

 

FILE SYSTEM UPGRADE OPTIONS

     VMFS-2 to VMFS-3 file system upgrade is a two step process. Before file

     system upgrade can begin the `vmfs2` and `vmfs3` drivers must be unloaded

     and the auxiliary file system driver, `fsaux`, should be loaded. The

     first step of upgrade uses the `-T` option. Once the first step com-

     pletes, the auxiliary file system driver, `fsaux`, must be unloaded and

     the `vmfs2` and `vmfs3` drivers reloaded. The second step of file system

     upgrade makes use of the `-u` option.

 

     -T, --tovmfs3

     -x, --upgradetype [zeroedthick|eagerzeroedthick|thin]

         Converts a VMFS-2 file system to VMFS-3 format, preserving all files

         on the file system. Only file systems with block size 8MB or less

         can be converted. The conversion is in-place and the auxiliary file

         system driver (`fsaux`) module must be loaded. ESX Server will

         try to ensure that no local process or remote ESX Server is currently

         accessing the VMFS file system to be converted. The conversion is a

         one-way operation and once the VMFS-2 file system is converted to

         VMFS-3 file system, it cannot be rolled back to VMFS-2. The `-x

         thin` option results in the conversion of VMFS-2 files into

         thin-provisioned VMFS-3 files (as opposed to thick-provisioned

         files). File blocks that are part of a 'thick' file, but were

         never written to, are discarded from the file to enable storage

         overcommitment.  The default upgrade option, `-x zeroedthick`,

         retains the properties of 'thick' files across the upgrade.

         The `-x eagerzeroedthick` option eagerly zeroes out previously

         unwritten blocks. Note that the upgrade process may run much longer

         when invoked with the `-x eagerzeroedthick` option, as opposed

         to the other two options.

 

     -u, --upgradefinish /vmfs/volumes/<file system label|file system UUID>

         Once the first step of file system upgrade has completed (using

         `-T`), the `vmfs2` and `vmfs3` modules must be reloaded and

         the `-u` option used to complete the upgrade.

 

VIRTUAL DISK OPTIONS

     -c, --createvirtualdisk #[gGmMkK]

     -a, --adaptertype [buslogic|lsilogic] srcFile

     -d, --diskformat [zeroedthick|eagerzeroedthick|thick|thin]

         Create a virtual disk with the specified size on the VMFS file

         system. The size is specified in bytes by default, but can be

         specified in kilobytes, megabytes or gigabytes by adding a suffix

         of 'k', 'm', or 'g' respectively. The 'adaptertype' option

         allows users to indicate which device driver should be used to

         communicate with the virtual disk. See the `SUPPORTED DISK

         FORMATS` section for details on the disk formats supported by

         the '-d' option. The default disk format is 'zeroedthick'. The

         `-d eagerzeroedthick` option is used to create `thick` virtual

         disk with zeroed out contents.

 

     -U, --deletevirtualdisk

         Delete files associated with the specified virtual disk.

 

     -E, --renamevirtualdisk srcDisk

         Rename files associated with a specified virtual disk to the

         specified name.

 

     -i, --clonevirtualdisk srcDisk

     -d, --diskformat [rdm:<device>|rdmp:<device>|raw:<device>|thin|2gbsparse|

                             monosparse|monoflat]

         Create a copy of a virtual disk or raw disk. The copy will be in

         the specified disk format. See the `SUPPORTED DISK FORMATS'

         section for details on the disk formats supported by the '-d'

         option. The default disk format is pre-allocated. To clone ESX

         REDO logs while preserving their hierarchy, use the Service

         Console command 'cp(1)'.

 

     -e, --exportvirtualdisk dstDisk

         This operation is deprecated. Use '-i srcDisk -d 2gbsparse' to

         achieve what it used to.

 

     -X, --extendvirtualdisk #[gGmMkK]

         Extend the specified VMFS virtual disk to the specified length.

         Extending a virtual disk will break any currently existing snapshots.

         This command is useful for extending the size of a virtual disk allocated

         to a virtual machine after the virtual machine has been created.  However,

         this command requires that the guest operating system has some capability

         for recognizing the new size of the virtual disk and taking advantage of

         this new size (e.g.  by updating the file system on the virtual disk to

         take advantage of the extra space).

 

     -M, --migratevirtualdisk

         Migrate an ESX2 virtual disk to an ESX3 virtual disk.

 

     -r, --createrdm /vmfs/devices/disks/...

         Map a raw disk to a file on a VMFS file system. Once the mapping

         is established, it can be used to access the raw disk like a

         normal VMFS virtual disk. The 'file length' of the mapping is

         the same as the size of the raw disk that it points to.

 

     -q, --queryrdm

         List the attributes of a raw disk mapping. When used with a

         'rdm:<device>' or 'raw:<device>' specification, it prints out the

         vmhba name of the raw disk corresponding to the mapping

         referenced by the <device>. It also prints out identification

         information for the raw disk (if any).

 

     -z, --createrdmpassthru /vmfs/devices/disks/...

         Map a passthrough raw disk to a file on a VMFS file system. This

         allows a virtual machine to bypass the VMKernel SCSI command

         filtering layer done for VMFS virtual disks. Once the mapping is

         established, it can be used to access the passthrough raw disk

         like a normal VMFS virtual disk.

 

     -v, --verbose #

         This option is ignored for the queryrdm option. Setting the

         verbosity level will list additional information for the virtual disk

         configuration.

 

     -g, --geometry

         Get the geometry information (cylinders, heads, sectors) of a

         virtual disk.

 

     -w, --writezeros

         Initialize the virtual disk with zeros. Any existing data on virtual

         disk is lost.

 

     -j, --inflatedisk

         Convert a thin virtual disk to preallocated with the additional

         guarantee that any data on thin disk is preserved and any blocks

         that were not allocated get allocated and zeroed out.

 

     -J, --miscop [setuuid | getuuid]

         'setuuid' option creates a unique identifier (UUID) for the

         virtual disk and stores the UUID in the descriptor file of the

         virtual disk. If the descriptor file already contains a UUID,

         it will be overwritten with a new one. Please make sure that the

         virtual disk does not have a UUID before using this option.

         'getuuid' option displays the UUID of the virtual disk.

 

SUPPORTED DISK FORMATS

     These are the arguments that can be passed to the '-d' option for the

     '-c' (create virtual disk) and '-i' (clone virtual disk) operations.

 

     `zeroedthick`

         This is the default option when creating new virtual disks.

         A zeroed thick disk has all space allocated at creation

         time, and this space is wiped clean of any previous contents on the

         physical media.

 

     `eagerzeroedthick`

         An eager zeroed thick disk has all space allocated and zeroed out at

         creation time. Such disks may take longer time during creation

         compared to other disk formats.

 

     `thick`

         A thick disk has all space allocated at creation time. This

         space may contain stale data as it exists on the physical media.

 

     `thin`

         Space required for thin-provisioned virtual disk is allocated and

         zeroed on demand as opposed to upon creation.

 

     `rdm`

         Virtual compatibility mode raw disk mapping.

 

     `rdmp`

         Physical compatibility mode (pass-through) raw disk mapping.

 

     `raw`

         Raw device.

 

     `2gbsparse`

         A sparse disk with 2GB maximum extent size. Disks in this format

         can be used with other VMware products.   The 2GB extentent size

         makes these disks easier to burn to dvd or use on filesystems that

         don't support large files.

 

     `monosparse`

         A monolithic sparse disk. Disks in this format can be used with

 

     `monoflat`

         A monolithic flat disk. Disks in this format can be used with other

         VMware products.

 

DEVICE OPTIONS

     -s, --scan adapterName

         Scan a specified adapter for devices and/or LUNs. This option is

         especially useful for adapters which are connected to storage area

         networks (SANs). If a new device or LUN becomes accessible via the

         adapter, ESX Server will register this new device or LUN and

         make it usable by virtual machines. If an existing device or LUN

         is not being used and now appears to be gone, it will be removed from

         ESX Server data structures and will no longer be accessible to

         virtual machines.

 

     -L, --lock [reserve|release|lunreset|targetreset|busreset] /vmfs/devices/disks/...

         Manage SCSI reservations on physical targets or LUNs. These

         commands can interrupt the operations of other servers on a storage

         area network (SAN), so they should be used with great caution. The

         `reserve` command will reserve the specified raw disk.

         After the reservation, other servers will get a SCSI reservation

         conflict if they attempt to access that disk, but the server that did

         the reservation will be able to access the disk normally. The

         `release` command will release the reservation on the specified

         disk. Other servers will be able to access the disk again. The

         `lunreset` command resets a single LUN only instead of all

         the LUNs attached to a target. The `targetreset`  and `busreset`

         command will reset target and bus respectively causing SCSI

         reservations to be dropped. This option is potentially disruptive to

         all servers sharing the storage and is only meant to be used

         in the context of Clustering.

 

EXAMPLES

     vmkfstools -C vmfs3 -b 1m -S myVMFS vmhba1:3:0:1

 

     Creates a new VMFS-3 file system with label `myVMFS` on the 1st partition

     of target 3 and LUN 0 of vmhba adapter 1. The file block size is 1MB.

 

     vmkfstools -Z vmhba0:1:2:4 vmhba1:3:0:1

 

     Extends the newly created file system by adding the 4th partition of tar-

     get 1 and LUN 2 of vmhba adapter 0. As a result, the file system will

     span two partitions - vmhba1:3:0:1 and vmhba0:1:2:4. Here, vmhba1:3:0:1

     is the name of the head partition of the file system that is to be

     extended.

 

     vmkfstools -c 2048m /vmfs/volumes/myVMFS/myOS.vmdk

 

     Creates a 2GB VMFS virtual disk with the name `myOS.vmdk` on the VMFS

     file system named `myVMFS`. This virtual disk may then be accessed by a

     virtual machine.

 

     vmkfstools -i /vmfs/volumes/templates/gold-master.vmdk /vmfs/vol-

     umes/myVMFS/myOS.vmdk

 

     Clones the contents of a gold master virtual disk image from a template

     repository to a virtual disk named `myOS.vmdk` on the VMFS file system

     called myVMFS. A virtual machine can be configured to use this virtual

     disk by adding the following lines to its configuration file:

 

       scsi0:0.present = TRUE

       scsi0:0.fileName = /vmfs/volumes/myVMFS/myOS.vmdk

 

     vmkfstools -r /vmfs/devices/disks/vmhbaX:Y:Z:0 foo-rdm.vmdk

 

     Creates a mapping file, `foo-rdm.vmdk`, to the raw disk `vmhbaX:Y:Z:0`.

     The mapping file `foo-rdm.vmdk` is created in the current VMFS working

     directory, and can be used in a virtual machine in the same manner as in

     the previous example.

 

     vmkfstools -s vmhba1

 

     Scan adapter vmhba1 for any new targets or LUNs and for any removed tar-

     gets or LUNs.

 

Article ID: 345, Created On: 9/19/2011, Modified: 9/19/2011