The virtual machine is corruptedaccompanied by a single choice button saying Remove. This is obviously shoddy, lazy software engineering on the part of that company, providing no assistance or guidance to the customer, let alone any intrinsic means for repair.
Here's how I handled it (which resulted in quick, painless resolution):
I began by performing a general health inspection, going into the
Documents/Parallels folder where the virtual machine data is housed.
There, I delved into each virtual machine's contents (via Show Package Contents).
All files were apparently there, of goodly size.
The DiskDescriptor.xml file's content looked fine.
Whereas I have Time Machine backups, I decided to proceed with the Remove.
Keeping an eye on the virtual machine data directories, I found that they
remained intact, as did the virtual machine alias on the desktop.
The Remove just removed the virtual machine from the Parallels selection list.
I then double-clicked the desktop alias for the problematic 64-bit W7 virtual machine.
It launched fine. I shut it down, quit Parallels, and then launched the
Parallels application afresh.
The 64-bit W7 was reinstated in the VM list, and in a healthy state, where it
could be launched cleanly from there.
Preliminary work involves getting a copy of that minimal Linux, as from http://mirror.centos.org/centos/5/os/x86_64/images/boot.iso . Then you create a kickstart file, guided by documents such as Kickstart HowTo and Understanding the kickstart configuration file.
The real challenge came in figuring out how to actually use the kickstart file
in the start-up process.
In an install, there is a Linux file called isolinux.cfg which defines kernel
choices, with labels, and certain options, including a timeout for data entry.
When the minimal Linux is booted, it will present a boot: prompt, where you
may type override values.
Therein you would type linux ks=______, where "linux" does not literally mean
Linux, but is one of those labels, this one for the normal Linux kernel stanza
in that isolinux.cfg file.
The "ks=" specifies where the kickstart file is.
You would like it to be a simple file on your Mac.
When the kickstart file is a local file, you normally specify it via like
ks=file:/path/to/ks.cfg.
But: The software operating at that point is, of course, Linux, and it is
programmed to work with Linux style file systems (ext3, etc.).
It doesn't know how to deal with the Mac file system, so you get a "not found"
error — which can be bewildering, as the file certainly is there.
So, how the heck can the kickstart file be made to participate in the install?
One method is to add it to the mimimal Linux ISO; but that means diddling with a
provisioned package, which you simply want to leave and use as-is.
I hit upon the idea of using Parallels' Floppy device as the provisioner.
This turned out to be an ordeal of discovery in that documentation how to use
this is poor or virtually non-existent.
I tried creating a .dmg file via OS X Disk Utility and renaming that to .fdd
form, as some material suggested.
Parallels rejected that.
It occurred to me that what I needed was an actual "floppy image".
I searched the 'net to find such, which can be found on a few sites such as
http://partitionlogic.org.uk/download/index.php.
That provides a 1.4 MB xxxx.img file.
(Beware: some image files can be defective; if you encounter one, chose another.)
Double-click that to mount and open it, then discard all its content and copy
your ks.cfg file into it.
Also, for good measure, do Get Info on the mount name and change its internal
name to "FLOPPY" (to match the Parallels identifier).
Unmount that image and then rename it to Floppy.fdd, which causes its icon to
magically become a floppy.
How to create a floppy image file:
In Terminal, issue the command: dd if=/dev/zero bs=1024 count=1440 > floppy.img.
Launch Disk Utility and open that img file from the File menu. Select Erase.
For Format, choose "MS-DOS (FAT)".
The resulting img file will have a kind of NDIF Disk Image as seen in the
Finder; when mounted. A Get Info on the mounted floppy volume will show a
format of MS-DOS (FAT12).
At last, we can proceed... In Parallels, create a new virtual machine of Linux type, specifying the variant which most closely resembles yours. (A common one is CentOS.) Specify that the load source be your minimal Linux ISO. Give the VM a goodly name. Go into Virtual Machine > Configure > Hardware > Floppy Disk and there select your Floppy.fdd to be the Source. Make sure the Connected box is checked. Check that CD/DVD 1 is attached to your ISO, and make it first in the Boot Order. Make sure the Connected box is checked. Now start the VM. It should spend a few seconds in its little boot sequence, and then present a splash screen with a boot: prompt. Before its timeout expires, start typing linux ks=floppy. That spec will cause the normal kernel (e.g., vmlinuz) to be used, and specify that your kickstart file is on the floppy device. Press Return after that typing to start the process. You should see a bunch of substantial activity, including going out over the network to download the actual Linux OS software (stage2.img), per the "url" line in your kickstart file.
A general challenge in creating a Linux VM is that Linux often wants arcane disk
and other devices which are unobvious in how to define them at the Parallels
level. I found nothing on the Web for guidance in that area, so had to derive
the following:
In Virtual Machine > Configure > Hardware, for Hard Disk settings:
Parallels Location value | Linux Device |
---|---|
IDE 0:0 | /dev/hda |
SATA 0:1 | /dev/sda |
SATA 0:2 | /dev/sdb |
Note that SATA Location values became available as of Parallels version 6.
When your kickstart reaches the Complete milestone (after about an hour), shut it down so that you can change the boot order, and go into Virtual Machine > Configure > Hardware > Boot Order and move Hard Disk 1 to the head of the list, displacing CD/DVD 1. Now you can boot normally.