Laptop Diaries, tripleboot & GRUB
By DaveLevy on Oct 23, 2006
The time has come the Walrus said to think of many things.............like upgrading my Laptop operating systems. Frankly I'm not using the Linux partition which I never got red-carpet to work on and is still languishing at a pretty incomplete Fedora 3. My Solaris partition is running at Nevada 35, and 50 is now availalbe, and as I wrote here..., Solaris is getting better and I need to move on. I am planning to replace the Linux partition with Nexenta and have a triple boot laptop, with Windows, Nexenta and Solaris. Sadly the Solaris upgrade path is destructive so I have to safeguard my SMF for Sybase (more coming soon) and a sekrit TCL project.
The prework required is based on the fact that the MBR points to the Linux grub menu, which needs to be changed; I propose to change the Linux partition for Nexenta. An additional problem is that the Solaris GRUB instance does not point at the Linux partition at all. With help from Big Admin, Derek Crudington & Mike Ramchand, I can now document the following facts.
The Linux grub menu /boot/grub/menu.lst is accurate. Take the Linux lines and copy them to the Solaris copy of menu.lst, which is in the same place. (The exact syntactal compatability between Solaris' GRUB and the Linux GRAB implementations took me several hours to discover). My missing Linux lines were
Title Fedora Core (2.6.13-1.1532_FC4)
kernel /vmlinuz-2.6.13-1.1532_FC4 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
appending the word 'single' to the kernel line gives us a single user boot option, obviously, best change the title. The accuracy of the partition definition can be confirmed using the linux command fdisk -l. (The solaris programs prtvtoc & format perform this function, don't use fdisk on Solaris; the fdisk flags are different.)
So having a good Solaris GRUB menu, I need to change the MBR to point at the Solaris partition. Here's where BigAdmin although some material their is a bit long in the tooth, and Derek come in, his blog has a GRUB category and you can find an article called Solaris 11 GRUB, which documents the required syntax below.
b# installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c0d0s0
Before running the command I checked the disk (i.e. the final argument ) using df -k.
I now have a triple boot system, S11 Nevada 35, Red Hat Linux Fedora 3½, and Windows XP.