0

I have a VMDK file and when I run mount Android-img.vmdk /mnt/android/ I get wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error. I have searched around and I see a lot of solutions that involve external libs, but I have to do it without downloading anything extra. I did run ls /sbin/mount* and got:

/sbin/mount.cifs
/sbin/mount.exfat-fuse
/sbin/mount.lowntfs-3g
/sbin/mount.nfs4
/sbin/mount.ntfs-3g
/sbin/mount.vboxsf
/sbin/mount.exfat
/sbin/mount.fuse
/sbin/mount.nfs
/sbin/mount.ntfs
/sbin/mountstats
/sbin/mount.vmhgfs
WarBro
  • 101

1 Answers1

0

I've used this method to mount VMs from QEMU, Virtualbox, and VMware. First, install this:

sudo apt install qemu-utils

Then load the driver and mount the image to a loop device:

sudo modprobe nbd
sudo qemu-nbd --connect=/dev/nbd0 /path/to/your/image-file

If it's working, you should see something like this (the following is from a Ubuntu VM):

$ sudo fdisk -l /dev/nbd0
Disk /dev/nbd0: 50 GiB, 53687091200 bytes, 104857600 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: C6425F6B-6DB0-4E64-BA60-BF958383F4AD

Device         Start       End  Sectors  Size Type
/dev/nbd0p1     2048   1050623  1048576  512M EFI System
/dev/nbd0p2  1050624  52955135 51904512 24.8G Linux filesystem
/dev/nbd0p3 52955136 104855551 51900416 24.8G Linux filesystem

Now, mount the partition as usual - either with your file manager or from the terminal like this:

sudo mount /dev/nbd0p2 /mnt

Once you're done, unmount the partition and unload the driver:

sudo sync
sudo umount /dev/nbd0p2
sudo qemu-nbd --disconnect /dev/nbd0
sudo modprobe -r nbd
ajgringo619
  • 1,132
  • 1
  • 6
  • 12
  • > "apt install qemu-utils"...........This is an air-gapped machine....no internet or repos to connect to in order to install....hence "no external libs" in my questions title..... – WarBro Sep 15 '20 at 17:53
  • I totally missed that; sorry for the confusion. Unless you find a way to install the necessary external libraries/programs, you won't be able to mount this. Can you download from another machine, then copy the packages over? – ajgringo619 Sep 15 '20 at 17:57