[ ThinkPadT61 ][ Previous | Next ]
Partitioning and Drive Performance
Putting the last first, in the end I scrubbed the (successful) multiboot configuration and went to a full-XP plus VMWare setup. See the VMWare page of this write-up for details. But back to the beginning...
Like my other ThinkPads, the T61 came with Windows XP installed in an NTFS partition, and a "hidden" partition containing IBM/Lenovo utilities. This partition is FAT32 and has an ID of 12 - "Compaq Service Partition". The ID makes the partition invisible to Windows Explorer, but is it visible in the disk management utilities, and from Linux.
The service partition is bootable via the ThinkVantage button and contains rescue and recovery utilities that can save and restore drive images, and may be able to access an unbootable XP partition to rescue files. A web browser is availabe as well as a cability to access USB peripherals for file loading and saving.
After my experience with the T43 where installing the System Commander boot manager rendered the service partition unbootable I tried to create a multiboot environment without using System Commander. In fact, I resolved to all the partitioning, partition resizing, and boot management using open-source tools this time. That was easy enough, but in the end didn't leave the service partition fully usable. More on that below.
This brings me to the same point I harp on in all of these write-ups:
Use the installed back-up utility to make a set of recovery CD/DVDs before doing anything else! Certainly before installing a boot manager or touching the drive partitioning IBM doesn't ship recovery media with the unit, nor do they provide it as a freebie in the 1st 30 days like they did with the R40. You are expected to make your own set with the installed tools. I made a CD and DVD, which saved my butt later.
The T61 came with a 160G 5400RPM drive installed. I purchased a HItachi 200G 7200RPM drive from NewEgg as an upgrade. (Actually first a Seagate 200G 7200RPM drive, then the Hitachi.) The Lenovo rescue and recovery tools made the upgrade easy - once I had abandoned the multi-boot setup. More on that below.
Partitioning & Boot Management
This time I was determined to manage the multi-boot stuff without using System Commander. SC is far too picky about what it will boot. It gets upset about certain drive geometries and refuses to list perfectly good OS installations as bootable.
The obvious choice was to use the tools available on the Knoppix 5.1.1 live CD: Gparted for partition manipulation (resizing & creation) and the grub bootloader for multi-boot management.
The factory 160G drive looked like this (Linux fdisk):
Disk /dev/sda: 160.0 GB, 160041885696 bytes
240 heads, 63 sectors/track, 20673 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 19910 150519568+ 7 HPFS/NTFS
/dev/sda2 19911 20673 5768280 12 Compaq diagnostics
1) Brought up XP and defragged the C: "drive"
2) Booted the Knoppix 5.1.1 CD and ran Gparted:
a) Resized the NTFS partition to 95G (almost instant!)
b) Moved the service partition down next to the resized NTFS partition (a few minutes)
c) Created 12G primary partition for Solaris
d) Created an extended partition in the remaining space for a FAT32 "scratch" logical partition and logical partitions for Linux 32 and 64 bit installations with a shared swap partition.
The drive now looks like this:
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 12111 97281576 7 HPFS/NTFS
/dev/sda2 12112 12829 5767335 12 Compaq diagnostics
/dev/sda3 12830 14289 11727450 bf Solaris
/dev/sda4 14290 19457 41511960 5 Extended
/dev/sda5 14290 16114 14659281 c W95 FAT32 (LBA)
/dev/sda6 16115 16237 987966 82 Linux swap / Solaris
/dev/sda7 16238 17818 12699351 83 Linux
/dev/sda8 17819 19457 13165236 83 Linux
At this point, XP and the service partition still boot OK (normal boot or via the ThinkVantage button). Now for the bootloader fun... The reasonable choices seemed to be 1) let the Solaris installation put grub in the MBR - with the other grub files in the Solaris partition - or (manually from Knoppix) put the grub files in the service partition and install grub in the MBR pointing to those files. That (the service partition install) would have the advantage of not requiring me to keep a healthy Solaris around at all times to host grub.
Ah, but here's the rub: grub could be installed in the service parttion just fine, but the stage 1 grub in the MBR would refuse to link to it as long as the ID was 12. Making the ID C could fix that, but would also make it visible to XP, and (maybe) cause problems for the ThinkVantage button at boot time.
For the record, notes on intalling grub from a Knoppix Live CD are over here. Installing from a running Linux installation (booted somehow) are similar, but the files will/should already be in place in /boot/grub.
A Solaris grub install had the advantage that the modified grub that Solaris installs can boot a Solaris kernel directly without requiring chainloading from "vanilla" grub to Solaris grub. grub menu entries can be added to chainload the Linux installations - or even boot the kernels directly if desired. After a thrash to get the Solaris installer to run - see T61 Solaris - I had Solaris up and Solaris grub installed to the MBR. The installer created a grub menu that included XP and the service partion as boot options. All well and good, but the ThinkVantage button couldn't boot the Rescue and Recovery (service) partion any more. Crap.
The long and short of it is that allowing anything to touch the MBR code (it seems to be OK to touch the partition tables) will break the Lenovo/IBM boot-time magic that lets the ThinkVantage button boot the service partition. Lenovo has a repair utility that is supposed to fix this, but it didn't work for me. The Linux installer I used (RedHat Fedora, and probably others) provides an option to install grub to the install partition's boot sector and not touch the MBR. Unfortunately, the Solaris installer provides no such option.
After re-imaging to factory configuration (using my CD+DVD recovery media) and experimenting I discovered that the Solaris installer will put a "vanilla" boot loader in the MBR that just boots the active partition (which will be Solaris after the install) unless the Solaris partition is set active before the install. If the Solaris partition is set active (with Linux fdisk or other tool), the Solaris installer won't touch the MBR code. I have discussed this with Sun engineers and they feel that this is a reasonable approach to making sure that something will boot after an installation.
So life is good - sort of. I can boot to the active partition. If that's XP, I get XP. If it's Solaris, I can use grub to boot whatever I want. The ThinkVantage button works. But. The Rescue & Recovery utility in XP can't find the recovery partition any more. Anybody's guess why. It's all there and bootable but the pinheaded XP utility can't generate recovery images now. For a potentially useful tool, it sure is fragile! Don't touch the MBR, don't move the partition, and don't fidget when I'm talking to you...
This isn't the end of the world. There are other ways to back up the drive - including the *nix partiions. In the end, though, I just went back to a factory configuration and run the unixen in VMWare. More on that here.
The T16 came with a factory 160G 5400RPM Hitachi drive. Plenty of space but a little slow. The laptop is sluggish booting and loading programs. It's probably as much due to all the garbage Lenovo starts up when XP boots, but I convined myself I needed a faster drive. After waiting for some time for NewEgg to stock a Seagate 200G 7200RPM drive I gave up and ordered one from PC Connection. Naturally, NewEgg began stocking one the next week... I tend to prefer Seagate drives for their 5 year warranty.
I had a full image of my drive created with Lenovo Rescue and Recovery in XP saved to a bootable USB drive so I used that to load the new Seagate drive. More on that in the Windows XP page. The new drive came up running XP (with the service partition installed too) and seemed faster. It got rather warm during a long VM cloning session (50C - which is under the limit of 60C for this drive, but not really desirable) and also created a noticeable vibration in the palm rest areas of the laptop. It might not have been a real problem during normal use, but was quite irritating on my test bench.
The drive I had avoided on NewEgg while waiting for the Seagate was a HItachi 200G 7200RPM unit. Hitachi has a rather bad reputation for the "deathstar" series, and a friend who does a lot of Windows rescue and recovery said he has seen too many bad Hitachis. Nevertheless, it was the only realistic option, so ($200US later) I had a new Hitachi drive in the T61. Restoring the saved image to this drive was a little challenging due to a R&R bug (details in the Windows XP page) but once done the drive seems to work quite well. It is quiet, vibration free, and seems to run cooler than the Seagate. As to reliability, we shall see...
Relative performance as reported by Knoppix hdparm is:
Stock Lenovo/Hitachi 160G 5400RPM:
Timing cached reads: 6604 MB in 1.99 seconds = 3325.20 MB/sec
Timing buffered disk reads: 118 MB in 3.04 seconds = 38.84 MB/sec
Seagate 200G 7200RPM:
Timing cached reads: 5996 MB in 1.99 seconds = 3016.84 MB/sec
Timing buffered disk reads: 188 MB in 3.02 seconds = 62.35 MB/sec
Hitachi 200G 7200RPM:
Timing cached reads: 6774 MB in 1.99 seconds = 3411.25 MB/sec
Timing buffered disk reads: 178 MB in 3.02 seconds = 58.98 MB/sec
Performance test results for these drives and a deskside 7200RPM drive taken with HDTune in XP (with pretty graphics) are shown here. HDTune has to contend with whatever XP is doing at the time, so the spikes probably don't mean much.