Sunday, November 14, 2010

Experiences with Windows XP on a logical partition

As I mentioned a few days ago, I managed to get Windows XP working well from a logical partition.
However, my intention was purely to free up a primary partition so that I could install FreeBSD on my Dell E520. Unfortunately, all of my attempts to install FreeBSD since then have rendered my XP unbootable.
When it becomes unbootable, what generally happens is that I get a message telling me that something is wrong with the installation and that I should use the original install DVD to "Repair Computer".
Problem is that this applies ONLY to Windows 7 (and probably Vista) but in typical Microsoft fashion no hint is given as to how to rectify the problem if you're stuck with XP.
Indeed, my Windows 7 disk didn't even recognize XP as a Windows installation. It's all coming back to me why I started using other OSes a long time ago.
I have the impression that the non-bootability arises from the FreeBSD installation somehow messing up the Windows boot partition. But, how and why is beyond me.
The second attempt I made to install FreeBSD, I did NOT install any FreeBSD bootloader. Nevertheless, XP still failed to boot. Indeed, EasyBCD (from Windows 7) was unable to assign the XP partition to the boot menu.
Incidentally, before dd'ing XP from /dev/sda2 (primary) to /dev/sda5 (logical), on this occasion I went to the registry key HKEY_LOCAL_MACHINE/SYSTEM/MountedDevices and, instead of deleting everything (on the right hand side) I deleted only the keys \DosDevices\D: (corresponding to /dev/sda2) and \DosDevices\J: (/dev/sda5).
This time the XP on the primary booted fine after a made this deletion and the deleted keys had regenerated themselves.
Then I deleted them again before doing the dd operation.
Now, the logical partition became the default download destination for the "moved" XP so this trick seems to have worked.
Nevertheless, I was very puzzled to find that /dev/sda5 (logical) was now called \D: by Windows and /dev/sda2 was called \J:.
This confused me for a while as it's actually very difficult in Windows to know on which partition the OS you are using is located when you're trying to distinguish between two OSes, one of which is a clone of the other. So, to find out which was which, I had to put 2 GB of movies onto the OS (making the free disk space noticeably smaller) I was working with, then change OS to Ubuntu and use fdisk -l to show which one on /dev/sda5.
OK, I give up and have assumed that with XP on a logical partition, you don't have the liberty to fool around with other partitions.
Now, I think I'll ditch one of my Windows OSes (after all, I hardly ever use them) in order to free up a primary for FreeBSD.

No comments:

Post a Comment