[ ThinkPadT61 ][ Previous | Next ]
VMware
Why
It's just easier than my usual multi-boot setup. Since my hardware products are PCI or network based, I either can't or don't need to plug them directly into the laptop. Since the PCI drivers for these boards aren't usable on a laptop anyway I don't need to run directly on the hardware. A virtual machine environment is fine for editing and compiling drivers and scripts. The network-based products can be driven from a virtual OS via the VM to host OS network bridge.
Skipping the multi-boot partitioning and boot loader thrash keeps the hard drive as configured by the factory. It is possible to back up everything using the Windows based tools.
For my purposes, performance of the virtual OSs - Linux and Solaris - is perfectly acceptable.
A new virtual machine can boot an installation CD/DVD and the installation will run just as it would on native hardware. It is also possible to attach an iso image of a CD/DVD to a virtual machine as virtual drive and boot from, and install from that. One can also download already created virtual machines with the OS and applications already installed.
At the moment, I have the following virtual machines on the T61: Fedora Core 6 32 bit, Fedora Core 6 64 bit, Solaris 10 U3 (boots 32 or 64 bit), Solaris Nevada Build 70 (64 bit boot fails), Ubuntu 7 32 bit, Ubuntu 7 64 bit, Windows 98SE (for some old design tools), and a "empty" Linux VM with no installed OS that I use for booting a Knoppix "Live CD" iso image.
VMware Products
VMware provides a range of free and non-free products. Free as in $$, not as in FOSS. VMware Workstation is a for-purchase general purpose product with an available free trial period. VMware Server is a free general purpose product with a limited feature set. VMware Player is free, and can play but not create virtual machines. VMware Converter is free, and can convert virtual machines created with one version of VMware (Workstation or Server) to another version. It can also clone virtual machines, and adjust certain configuration parameters.
My initial efforts were with an evaluation copy of Workstation 6. Once the eval period was over, I discovered that the virtual machines I had created would run in Player, but not Server. The Converter let me "down version" them so they ran fine in Server.
Overall, it is probably easiest to just use whatever Server version is latest and avoid the fuss.
Virtual Appliances
There is a vast array of pre-built virtual machines available out there. www.vmware.com/appliances/ lists many of them. The Sun website lists some pre-built Solaris VMs.
VMware Tools
VMware tools are utilities designed to be installed to a running virtual machine that optimize that operating system's performance as a VM. In particular, graphics performance really bites without the tools installed. Even text windows perform redraws poorly in some cases.
The VMware Server/Workstation console will remind the user to install the tools with a "!You do not have VMware tools installed" message at the bottom of the console window. Use VM->Install VMware Tools in the upper menu bar to import the tools to the VM. The actual install procedure varies depending on the VM.
Be careful to verify that the tools installed match the version of the OS in the VM (Xorg version in particular) or you may end up with an unusable window system in the virtual OS.
Solaris Quirks
The pre-built Solaris VMs seemed to work fine. Solaris 10 U3 that I downloaded from the Sun site booted OK in 32 and 64 bit mode. The Open Solaris version that I installed myself - Solaris Nevada Build 70 - installed but wouldn't boot in the default 64 bit mode. Just a cursor on a blank screen after selecting the default in the grub boot menu.
Solaris failsafe booted OK and that seemed to indicate that 32 bit mode would boot. Using the grub boot-time editor, I changed these lines:
kernel$ /platform/i86pc/kernel/$ISADIR/unix
module$ /platform/i86pc/$ISADIR/boot_archive
to:
kernel$ /platform/i86pc/kernel/unix
module$ /platform/i86pc/boot_archive
on the fly, and the Solaris VM booted in 32 bit mode to a GUI login. Once booted, I edited /boot/grub/menu.lst to add a 32 bit boot as the default.
Pretzel Logic
Boot a virual live CD into a empty virtual machine.
One of the things I do occasionally is remaster the latest version of the Knoppix Live CD. I add a few packages, remove a few packages, add some additional boot options, and customize the html and images. A Knoppix CD boots OK on the T61, although the graphics system struggles to find the right mode (the screen flashes a few times) and ends up running in some funky resolution.
Remastering requires a few Gigabytes of space in a Linux file system (ext2 or ext3). This T61 has only a single NTFS partition plus the service partition so it won't work to directly boot the live CD on the bare hardware. It is possible to do the deed using a "empty" virtual machine.
I created a new 10G virtual machine and told VMware server that it was an "other linux" installation with an ext3 filesystem. At this point I could have booted the physical Knoppix CD from within the VM, but it is easier and quicker to boot from an iso image of the Knoppix CD on the hard drive. In the VMware Server console for the new VM I selected "Edit Virtual Machine Settings" and configured the virtual CD-ROM to use an ISO image.
Starting the VM boots the "CD" from the iso image and brings up Knoppix just as it would have when booting an installation CD. Once Knoppix was running I used it to format the virtual partition with the ext3 file system. I now had a Linux filesystem to use for workspace when remastering Knoppix. At this point, the remastering process was just as if I had booted the Live CD directly and used an actual Linux partition for workspace.
The only drawback to this process is that I couldn't install VMware tools to the running "CD" so graphics performance was nasty. Actual "computational" performance was pretty good, though. The process of generating the new Knoppix compressed file system and the final new iso file took only a few minutes.
The next step is to get the remastered iso to physical CD or at least somewhere in the "outside world" where it could be burned. (It may well be possible to burn a physical CD from within the VM, but I didn't try that. At minimum it would have required a 2nd virtual CD-ROM drive to attach to the physical drive.) I started the SSH server within Knoppix, and used WS-FTP Pro in XP to connect to the VM's server to copy the file into XP. Other windows SSH clients should also be able to do this. To get the SSH server's IP address use ifconfig from a Knoppix shell console (eth0's ip address) or ipconfig from an XP command prompt window (VMnet8's ip address in my setup).
Weird, but slick. Of course, this could also be done by booting the CD (or iso) into an existing Linux VM, but if one isn't handy, it isn't necessary to install one. Just use an empty VM.
Random Notes
T61 screen resolution.
My T61 has what Lenovo calls a WXGA+ screen with 1440x900 resolution. They also offer a WXGA 1280x800 resolution. Either is probably just fine except when running virtual machine windows. IMHO, a comfortable resolution for the VM OS itself is 1024x768. When the VMware console is wrapped around this, the whole thing just barely (or not quite) fits in the T61's 900 vertical pixels.
The 1280x800 screen would require scrolling to see the entire VMware console/VM screen, or the VM OS would have to run in a reduced resolution. 800x600 or something. This isn't the end of the world, but may be a consideration purchasing a T61 or other widescreen laptop.
[ ThinkPadT61 ][ Previous | Next ]