cancel
Showing results for 
Search instead for 
Did you mean: 

Mounting a VMDK from a restored backup taken with Backup Exec 2010R3

SYM-AJ
Level 5

I have a requirement to restore individual files/folders from 'historical' backups taken with Backup Exec 2010R3 in years gone by.

The current situation is as follows:

W2K16 installed on server, BEX16 installed, tape library attached.  All functioning OK.

Old tapes inserted, inventoried and catalogued - all OK.

Data restored from an old VCB VMWare backup taken with BEX2010R3 and placed on a local disk - all OK.

However - this is the point that made me remember back to the VCB backup days of old.  The backups were taken with the options set which created a 'multi-part' backup of the VMDK - with each part being a maximum of 2GB.  Therefore I have (for example) a 32GB (approx) VMDK which consists of the following:

scsi0-1-0-server_name.vmdk  (2KB)  I assume this is a 'control' file

scsi0-1-0-server_name-s001.vmdk (2GB)

scsi0-1-0-server_name-s002.vmdk (2GB)

etc etc thru

scsi0-1-0-server_name-s016.vmdk (13,376KB)

I am looking for a way to mount this VMDK on the windows server in order to copy files/folders from it to another location.

We don't have the option to restore the full VM machine into an ESX server / vCenter Server, and don't want to take this approach anyhow.

With a 'one-part' VMDK I usually use OSFMount utility which works a dream.  Simply mounts the VMDK as a drive letter in windows and you can access it as if it were a local disk.  However - this doesn't appear to function with a 'multi-part' VMDK as above.  I have pointed it at the 'control' file and it see's a partition but fails to mount.  I am guessing it is not aware of the 'multi-part' VMDK.

We have previously used (and can still do so on an old W2K3 server) the MOUNTVM.EXE utility (part of the VCB Consolidated Backup feature) - but this is simply hanging on the W2K16 server.  As it is no longer supported there is no option to get any support from VMWare.

Where do I go from here ?  Any suggestions ?

AJ.

17 REPLIES 17

josef_honc1
Level 3
Partner

There is a vmware-mount command available as a part of Virtual Disk Development Kit.  You can download it at https://code.vmware.com/web/sdk/55/vddk

This utility can mount almost any type of VMware VMDK.

Josef

 

I downloaded the VDDK but see no vmware-mount comand.  I have since downloaded the vmware-mount utility and will install and try that now.

Thx,

AJ

No joy with the vmware-mount command / utility.

I have restored the data to the local S: drive on my BEX16 server and am then issuing the following command (server-name substituted from the 'real' server name).  I don't have a J: drive on the BEX16 server.

C:\Program Files (x86)\VMware\VMware DiskMount Utility>vmware-mount J: "S:\Restore\server-name\scsi0-1-0-servername_1.vmdk"
Unable to mount the virtual disk. The disk may be in use by a virtual machine or mounted under another drive letter. If not, verify that the disk is a virtual disk file, and that the disk file has not been corrupted.

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

Any more thoughts ?

AJ.

What is the content of the vmdk file? It should be a text file with some parameters pointing to the individual split (s00X) files.

The file I am pointing at is a vmdk filetype, and contains the following (when I open with notepad):

# Disk DescriptorFile
version=1
CID=00000001
parentCID=ffffffff
createType="twoGbMaxExtentSparse"

# Extent description
RW 4192256 SPARSE "scsi0-0-0-server-name-s001.vmdk"
RW 4192256 SPARSE "scsi0-0-0-server-name-s002.vmdk"
RW 4192256 SPARSE "scsi0-0-0-server-name-s003.vmdk"
RW 4192256 SPARSE "scsi0-0-0-server-name-s004.vmdk"
RW 2125464 SPARSE "scsi0-0-0-server-name-s005.vmdk"

# The Disk Data Base
#DDB

ddb.virtualHWVersion = "4"
ddb.toolsVersion = "7304"
ddb.uuid = "60 00 C2 91 75 93 2f ae-3b 10 45 67 1b 74 cb 96"
ddb.geometry.cylinders = "1176"
ddb.geometry.heads = "255"
ddb.geometry.sectors = "63"
ddb.adapterType = "buslogic"

AJ

This looks correct, please upload also the logs from vmware-mount.  Logs are located in C:\users\<user>\AppData\Local\Temp\vmware-<user>-<nnnn>\vmount.log and vmount-client.log

 

I cannot locate any of the two logs you mentioned ?  Also, I cannot see a switch on the command to produce logs.

Any ideas.....

AJ

There is no switch for logging, logs are always created in the temp directory. Look into VDDK documentation

Try to search for vmount.log, if the logs are not created, try to run the vmware-mount.exe from the elevated command prompt.

OK - I have been doing a little more work on this.

Following reviewing the documentation you highlighted I did not have the VDDK installed !  I have the VMware condolidated backup framework and the VMware DiskMount utility directories under the c:\program files(x86)\vmware directory - now I have downloaded the .exe file for the VDDK and gone through the install and added the new bin directory to the top of my path - now we are getting somewhere.....

When I run the vmware-mount command now (from the VMware Virtual Disk Development Kit directory as opposed to the VMware Diskmount Utility directory) I get the vmount-client.log produced which contains the following:

Errorcode = -2.
Jul 25 11:34:56.031: Using system libcrypto, version 90811F
Jul 25 11:34:56.312: SNAPSHOT: IsDiskModifySafe: Scanning directory of file s:\Restore\DUB-145-PRINT\scsi0-0-0-DUB-145-PRINT.vmdk for vmx files.
Jul 25 11:34:56.312: baseDir = 's:\Restore\DUB-145-PRINT\', vmx file = 'DUB-145-PRINT.vmx'
Jul 25 11:34:56.312: SNAPSHOT: AnalyzeSnapshotTree: Search start:      's:\Restore\DUB-145-PRINT\DUB-145-PRINT.vmx', baseDiskOnly [ ]
Jul 25 11:34:56.312: SNAPSHOT: SnapshotConfigExtFinder: Unable to find file: 'DUB-145-PRINT-000001.vmdk'
Jul 25 11:34:56.312: SNAPSHOT: SnapshotConfigInfoExpandDisks: SnapshotConfigInfoExpandDisksInt Error 7
Jul 25 11:34:56.312: SNAPSHOT: SnapshotConfigInfoExpand SnapshotConfigInfoExpandDisks: Error 7
Jul 25 11:34:56.312: Warning: Jul 25 11:34:56.312: Failed to analyze snapshot chain 's:\Restore\DUB-145-PRINT\DUB-145-PRINT.vmx'.
Will not be able to make an informed decision based on partial information.
Jul 25 11:34:56.312: Error analyzing 's:\Restore\DUB-145-PRINT\DUB-145-PRINT.vmx'. Snapshot error: 7, legacySuccess: 1, numStates: 0
Jul 25 11:34:56.312: VMware-mount cannot mount this virtual disk. Make sure it is the latest snapshot and does not belong to a suspended VM. Check the logfile for more details.

This looks to me like there is a problem locating snapshot details for the volume.

The s:\Restore\DUB-145-PRINT\DUB-145-PRINT.vmx contains the following:

#!/usr/bin/vmware
config.version = "8"
virtualHW.version = "4"
floppy0.present = "false"
nvram = "DUB-145-PRINT.nvram"
deploymentPlatform = "windows"
virtualHW.productCompatibility = "hosted"
tools.upgrade.policy = "manual"
powerType.powerOff = "default"
powerType.powerOn = "default"
powerType.suspend = "default"
powerType.reset = "default"

displayName = "DUB-145-PRINT"
extendedConfigFile = "DUB-145-PRINT.vmxf"

scsi0.present = "true"
scsi0.sharedBus = "none"
memsize = "1536"
scsi0:0.present = "true"
scsi0:0.fileName = "DUB-145-PRINT-000001.vmdk"
scsi0:0.deviceType = "scsi-hardDisk"
sched.scsi0:0.shares = "normal"
scsi0:1.present = "true"
scsi0:1.fileName = "DUB-145-PRINT_1-000001.vmdk"
scsi0:1.deviceType = "scsi-hardDisk"
sched.scsi0:1.shares = "normal"
scsi0:2.present = "true"
scsi0:2.fileName = "DUB-145-PRINT_2-000001.vmdk"
scsi0:2.deviceType = "scsi-hardDisk"
sched.scsi0:2.shares = "normal"
ide0:0.present = "false"
ide0:0.clientDevice = "TRUE"
ide0:0.deviceType = "atapi-cdrom"
ide0:0.startConnected = "FALSE"
ethernet0.present = "true"
ethernet0.wakeOnPcktRcv = "false"
ethernet0.networkName = "VM Network"
ethernet0.addressType = "vpx"
ethernet0.generatedAddress = "00:50:56:a1:22:49"
guestOSAltName = "Microsoft Windows XP Professional (32-bit)"
guestOS = "winxppro"
uuid.bios = "56 4d e3 7b d9 2b 8e d4-c9 f8 f8 df 24 7b 9b d7"
log.fileName = "vmware.log"
snapshot.action = "keep"
sched.cpu.min = "0"
sched.cpu.units = "mhz"
sched.cpu.shares = "normal"
sched.mem.minsize = "0"
sched.mem.shares = "normal"

evcCompatibilityMode = "FALSE"
guestCPUID.0 = "0000000a756e65476c65746e49656e69"
guestCPUID.1 = "0001067800010800000822010febfbff"
guestCPUID.80000001 = "00000000000000000000000120100000"
hostCPUID.0 = "0000000a756e65476c65746e49656e69"
hostCPUID.1 = "0001067600040800000ce3bdbfebfbff"
hostCPUID.80000001 = "00000000000000000000000120100000"
scsi0:0.redo = ""
scsi0:1.redo = ""
scsi0:2.redo = ""
userCPUID.0 = "0000000a756e65476c65746e49656e69"
userCPUID.1 = "0001067600040800000822010febfbff"
userCPUID.80000001 = "00000000000000000000000120100000"
vmware.tools.requiredversion = "7302"

tools.syncTime = "FALSE"
uuid.location = "56 4d 06 2a f2 c6 f7 79-49 2a f9 0f 54 de e8 4a"
migrate.hostlog = "./DUB-145-PRINT-05068f92.hlog"
sched.mem.max = "1536"
sched.swap.derivedName = "/vmfs/volumes/492e7ac0-7a3d9986-1120-0022198e17a1/DUB-145-PRINT/DUB-145-PRINT-05068f92.vswp"

cpuid.1.ecx = "------R-----------------------R-"

vmotion.checkpointFBSize = "4194304"

ide0:0.fileName = "/usr/lib/vmware/isoimages/windows.iso"

I then 'chanced' placing the switch /m:n (mount in non-persistent mode) in the command and hey presto - the drive mounted !

vmware-mount /m:n L: "s:\Restore\DUB-145-PRINT\scsi0-0-0-DUB-145-PRINT.vmdk"

I DO NOT see the L: drive in windows explorer however, but if I switch to L: in the command prompt it is there and I can navigate through its structure.  Any ideas why it is not showing in explorer ?

Thanks for all your assistance so far.

AJ

 

 

Hello AJ,

this can be an UAC issue, try to start explorer from the command shell where you run the vmware-mount command.

Josef

Tried that - no joy.

Also tried re-scanning from Disk Manager (and also from device manager) - but nothing new shows up.

Puzzled......

AJ

Colin_Weaver
Moderator
Moderator
Employee Accredited Certified

Try opening Explorer and then typing L: into the selection bar instead of browsing (or even type L: into the run prompt off your start bar)

 

 

Opened explorer from my elevate command prompt - no joy.

Type L: in top bar of explorer - no joy

Run prompt on start bar (Windows Server 2016) - no joy

Thanks for the input,

AJ

Riyaj_S
Moderator
Moderator
Employee Accredited Certified

There are couple of more ways to try here,

1) Exporting virtual machines from VMware Workstation to ESX/ESXi (1012258) 

https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=10122...

2) Using "VMware vCenter Converter Standalone" :

https://www.vmware.com/in/products/converter.html

Thanks and Regards,

Riyaj

Thanks for the input but we have no connectivity to an ESX platform, and we want to avoid restoring a VM - we just want individual file / folder restore from the VMDK's.

AJ

Colin_Weaver
Moderator
Moderator
Employee Accredited Certified

OK so as you can get at the drive in a command prompt - can't you copy it to a drive letter that can be seen in Explorer so you can then see the data in a way that can be more easily manipulated

 

If you use xcopy (or similar command) you can copy a complete file and folder

Running the vmware-mount command from within the Windows Job Scheduler will run under the system account and the mounted drive is then available through Windows File Explorer (it isn't when you run from an elevated command prompt).