Operating Systems

Just a quick reference reminder / point paper on how to install multiple operating systems onto a single computer. I currently have Windows 98, XP, Vista, 7, 8, OSx, and Kubuntu running on an HP Touchsmart. Here are the steps which allowed me to do this.

I started with a new HP Touchsmart with MS Vista installed on a 650 GB Hard Drive.

I booted the PC with a SystemRescue CD I created. Using GParted drive partitioning software I changed the partitioning to three primaries and one extended. I planned on using GRUB Legacy as my boot loader having it on a dedicated partition. Here’s what the partition table looks like:


Partition 1 – Fat 32  2 GB (Win 98)

Partition 2 – NTFS 50 GB (Win 8)

Partition 3 – Fat 16 100 MB (GRUB goes here)

Partition 4 – EXTENDED

Partition 5 – SWAP – for Linux 8GB

Partition 6 – NTFS 40GB (Vista)

Partition 7 – NTFS 16GB (XP Pro)

Partition 8 – JFS+ 25GB (OS-x)

Partition 9 – EXT4 / 3GB

Partition 10 – EXT4 /usr 8GB

Partition 11 – EXT4 /var 6GB

Partition 12 – EXT4 /tmp 4GB

Partition 13 – Resier /home 11GB

Partition 14 – NTFS 335 GB (For common use files Documents and Settings, etc.)

Partition 15 – NTFS 70GB (Win 7)

Partition 16 – JFS+  20GB (Timemachine)

Once the partitioning was completed it was time to relocate Vista from the primary to  its “extended” location.

I first made a directory called OSImages

mkdir /mnt/OSImages

Then I mounted that folder

mount /dev/sda13 /mnt/OSImages

SystemRescue has a program called fsarchiver which allows you to take snapshots of drives and convert them to a file. Using the following command I turned my operating Vista partition into a FSA file.

fsarchiver -j2 -z4 -v -v savefs /OSImages/vista.fsa /dev/sda2

Once that was completed I used fsarchiver to restore the file to the new partition.

restfs -v  /OSImages/vista.fsa id=0, dest=/dev/sda5

Next I installed GRUB onto sda3

At a terminal type grub

grub> root (hd0,2) (Since I want grub on the third partition but legacy starts numbering at 0)

setup (hd0)


Next I edited a menu.lst and added

title Windows Vista
unhide (hd0,5)
rootnoverify (hd0,5)
hide (hd0,0)
hide (hd0,1)
hide (hd0,2)
hide (hd0,6)
hide (hd0,14)
chainloader +1

I want all the partitions that Vista would “understand” to be hidden so that it becomes the “C:” drive. My Data subdirectory then becomes D: for all the MS operating systems.

Reboot to test and vista should load. Next I booted back into SystemRescue and hid sda5 and unhid sda2. I then installed Win XP. Once it was loaded I used fsarchiver to take a snapshot of the OS and saved it to the OSImages as winxp.fsa. I restored it to sda6 and then I added this to menu.lst

title Windows XP Professional SP3
unhide (hd0,6)
rootnoverify (hd0,6)
hide (hd0,0)
hide (hd0,1)
hide (hd0,2)
hide (hd0,5)
hide (hd0,14)
chainloader +1

Perform the same steps for each OS.

Base line, hide all the partitions, install the OS on a primary (in my case I always use sda2). Verify that the new OS boots. Take a snapshot of the installed configuration with fsarchiver and then restore to the desired partition. Add the new OS as a menu item being sure to unhide its partition and hide all the others.

Contrary to what is “published” in numerous forums Win7, XP, and Vista all run just fine from extended partitions.

NOTE: if after installing an additional OS the bootloader gets overwritten, just boot up systemrescue and re-install grub using the steps above.



About cx650t

Cisco VoIP Administrator CENTREX Manager 1983 Honda CX650 Turbo Motorcycle Eagle Scout
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s