VFindMe-Home Tech-Home Search

On installing Mandrake 7.2 in a VM and getting access to the virtual disk

Resurrecting and using an old OS

by : November 30, 2015

As a note to file for myself, here are some issues that I have found when trying to install a new virtual machine using VirtualBox (hereafter VBox). The following assumes that VBox has been installed correctly and works up to the point of creating a new VM.

Specific case: installing VM for Linux Mandrake 7.2 on an openSUSE Leap 42.1 system with CDROM and SATA hard drive storage.

FATAL: cdrom disk is not bootable

Problem: I set up a new VM and allow VBox to decide what kind of storage I have and need. When I press start, I can hear the CDROM spin up but VBox reports a message like "FATAL: medium is not bootable". I know that the disk is bootable since when I try to use the disk on boot of another machine, it consistently takes me to the boot interface.

Solution: The issue is that what the VM thinks is the cdrom drive and what the computer thinks is the cdrom drive are different things. They need to be told to hold hands. Go to the settings for the VM and inspect the Storage. Likely the entry for the CD shows "Empty". Click on the entry and look at the attributes section on the right, click on the image for the CD, select the hardware description for the physical CDROM and save. Power off the VM and try again. The CD should now boot.

Comment: I think this may happen because on my openSUSE system I can install the iso for the guest additions as well. VBox does not know which to choose as the CD so leaves it empty.

Do you have other SCSI devices infinite loop

Problem: during the boot process of Mandrake in the VM, after selecting the region and accept the license the system asks if I have other SCSI devices. I don't, so I say no, but the prompt repeats infinitely. If I say yes to any option, the system cannot find the support. There appears to be no way past this item.

Solution: Change the entry in settings for the virtual hard disk from SATA to IDE. By default VBox may add the virtual hard disk under a SATA driver, but it needs to be under an IDE driver. This means remove the entry for SATA and add back the .vdi entry under the same controller as the CDROM.

Comment: Mandrake 7.2 was created (October 2000) before support was known (2003) for my main SATA drive where the virtual hard disk is located. Even though no physical connections exist in the system for IDE hard drive, Mandrake is happy with a virtual IDE interface even though it is on a SATA drive.

Cannot read CDROM disk 2 during install

Problem: After the Mandrake installation process finishes with the content from disk 1 it automatically prompts for disk 2. On replacement of the disk I confirm with OK but the system repeatedly ejects the disk.

Solution: Open the CDROM from the main system and inspect the contents with the file manager. Press OK in the install process again, the process now recognizes the disk as the correct one and continues.

Comments: No idea why this is happening, maybe an old drive or needs cleaning.

Access contents of the vdi virtual disk

Problem: I tried many times to install the guest additions into the Mandrake virtual installation without any success. So the problem is how to access any files created in the VM? There are various ways of achieving this including the use of fuse applications, but I was not able to get any virtual box fuse clients to work with this VM.

Solution: (with thanks to a number of sites which offered ideas)

  modprobe nbd max_part=15
  qemu-nbd -c /dev/nbd0 /path/to/Mandrake.vdi
  fdisk /dev/nbd0 (then list partitions with p option, q to exit)
  mount /dev/nbd0p6 /mnt
  ... can now read the partition through file manager and so on to retrieve information
  ... and once finished with the drive 
  umount /mnt
  qemu-nbd -d /dev/nbd0

Comments: QEMU was available from the openSUSE repos, and the option for max_part was necessary to allow the partitions to be exposed. Without this option, the partition label nbd0p* was not available to the mount command. The call to fdisk was only necessary to get the labels for the partitions. Explicit disconnection is probably a good idea even though access is read only.