Editing Grub in Solaris 11

Soldato
Joined
18 Oct 2002
Posts
5,827
Location
Liverpool :-)
Lo all,

I've been messing about this morning with my old laptop, basically I wanted to make it triple boot for something to do :) It's got a small XP partition (4gb) that was created just to test the hardware, as this old laptop (1.5 celeron, 512mb ram, 40gb hd) was rescued from the IT scrap heap not so long ago.

Installed Ubuntu 8.04, dual boot worked fine with the Linux grub. I then installed solaris 11, i know solaris uses a different file system and will then use it's own grub. It's picked up the windows partition but not Ubunutu.

I don't seem to be able to find any easy answers of how to edit the solaris grub and put an entry for the linux partition, anyone got any ideas?
 
I noticed I had an extra 14gb of unallocated space on the drive. So I thought i'd make the laptop quad boot for a laugh, installed Linux mint 6 and followed the guide above to make the ubuntu partition root again. I've installed Gparted to see what's going on with the partitions, this is what i've got:

/dev/sda1 ext3 - ubuntu
/dev/sda2 ntfs - xp with the flag of boot
/dev/sda3 unknown - solaris
/dev/sda4 extended
/dev/sda5 ext3 - linux mint 6

menu.lst looks like this:

title windows nt/2000/xp (loader)
root (hd0,1)
savedefault
makeactive
chainloader +1

title solaris
root (hd0,2)
makeactive
chainloader +1

title Linux mint 6
root (hd0,5)
makeactive
chainloader +1

When i select Linux mint, I either get error 22 (hd0,5) or no such partition or error 12 (hd0,4)

What have i done wrong/missing?
 
I've removed the makeactive from solaris and linux mint. I tried mint at (hd0,5 and hd0,6) and I get no partition exists, trying it at (hd0,4) i get error 13, invalid or unsupported executable format?
 
I don't see Ubuntu in your menu. :confused:


Where did you install Mint's grub? Install partition or MBR?

It reads like Mint's GRUB was installed in the MBR, and for that you need ' kernel ' and ' initrd ' entries in ' menu.lst '.
 
I choose to install mint in the empty unallocated space of the drive, I've now deleted the linux mint partition and thought i'd try PCLinux instead, it's obviously doing the same thing.

Regarding the entries to grub, i'm having problems finding the information i need to include for pclinux, does this look right?

kernel /boot/kernel 2.2.26.8.tex3
initrd /boot/initrd-2.2.26.8.text3

Do i need anything else?
 
Retrace your steps. Where did it start to go wrong? Windows and Solaris boot without problems, it's just Mint?

Your Mint appears to be on sda5. You can boot an OS / Live CD, mount sda5 then navigate to sda5/boot/grub and find menu.lst. In there are the correct kernel and initrd lines. Assuming, of course, that you installed Mint's GRUB to the MBR. If you installed to the boot sector of sda5, then you should be able to just chainload. You may have hit the 256 inode bug.

I've posted my fdisk and menu.lst outputs for comparison. As you can see, I have multiple Linux installs. One Grub in the MBR, with its boot files / menu.lst on hda3 :

Code:
Device		Boot	System

/dev/hda1		Linux  
/dev/hda2		Linux 
/dev/hda3		Linux 
/dev/hda4		Extended
/dev/hda5		Linux 
/dev/hda6		Linux 
/dev/hda7		Linux


Device		Boot	System

/dev/hdb1		Hidden HPFS/NTFS 
/dev/hdb2	*	HPFS/NTFS 
/dev/hdb3		Hidden HPFS/NTFS
/dev/hdb4		W95 Ext'd (LBA)
/dev/hdb5		HPFS/NTFS



title		Debian Etch
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.18-6-486 root=/dev/hda2 ro 
initrd		/boot/initrd.img-2.6.18-6-486

title		Debian Lenny
root		(hd0,2)
kernel		/vmlinuz-2.6.26-1-686 root=/dev/mapper/hda5_crypt ro 
initrd		/initrd.img-2.6.26-1-686

title		Ubuntu 7.10 Live CD
root		(hd0,5)
kernel		/casper/vmlinuz boot=casper root=/dev/ram ramdisk_size=1048576 rw
initrd		/casper/initrd.gz

title		Ubuntu 8.10 Live CD
root		(hd0,1)
kernel		/casper/vmlinuz boot=casper root=/dev/ram ramdisk_size=1048576 rw
initrd		/casper/initrd.gz


title		Windows Vista
hide		(hd1,0)
hide		(hd1,2)
unhide		(hd1,1)
root		(hd1,1)
map		(hd0) (hd1)
map		(hd1) (hd0)
makeactive
chainloader	+1

title		Windows Vista Installer
hide		(hd1,0)
hide		(hd1,1)
unhide		(hd1,2)
root		(hd1,2)
map		(hd0) (hd1)
map		(hd1) (hd0)
makeactive
chainloader	+1
 
Last edited:
Back
Top Bottom