I booted my laptop from the Katya CD. Like all Mint distributions, you can run Linux from the CD, which allows you to screw with the hard drive. Mint comes with GParted, the Gnome partition editor, which deserves every accolade that anyone has ever thrown at it. My hard drive started with a small boot partition, followed by the Windows partition (NTFS), and then one extended partition for Linux containing three logical partitions (home, swap and the main partition). All I had to do was:
- Shrink the main partition (which had the most free disk space) to create some unallocated space.
- Move the main partition all the way to the right.
- Move the swap partition all the way to the right. The unallocated space was now at the beginning of the extended partition.
- Shrink the extended partition to give up the unallocated space (placing it between the NTFS partition and the extended partition.
- Expand the NTFS partition to soak up the free space.
- Apply all operations.
Once that was done, I booted into Windows, which immediately ran chkdsk to square things away. I rebooted into Windows, and all looks good.
Actually, the first time I did this, GParted showed the correct (new) partition scheme, but when I got into Windows it showed the old partition size. Back to Mint and GParted, and sure enough, the old partition table was there. I'm not sure whether I screwed something up. The first time chkdsk ran, it rebooted when my back was turned, and so booted into Mint (the default) rather than Win 7. I don't know if that was the problem, or if somehow the modified partition table was not written the first time around. Anyway, it's all good now.