Linux Grub And Solaris 10 1/06 Grub


Recommended Posts

I have two Hard disks, on Primary master I installed windows (XP and 2003).

On the Primary Slave I installed FC4 and Mandrake 10, and Solaris V10 1/06 (with grub) on hdb1.

I configured FC4 bootloader (installed into MBR) to point to the location of Solaris [hdb1 or as GRUB read it (hd1,0)], and Mandrake 10.

I can boot FC4 and Manadrake without any problem.

The last OS that I have installed is Solaris 10 (1/06 support GRUB),I used Solaris CD1,and when CD has installed every thing , the system rebooted.

I have not touch FC4 Bootloader which resides into MBR.

When Solaris option is selected form the Linux GRUB menu, I received another GRUB menu (Solaris GRUB menu) then I chose form Solaris GRUB menu this :

'Solaris 10 1/06 s10x_u1wos_19a X86'

I received this error:

Booting 'Solaris 10 1/06 s10x_u1wos_19a X86'

root (hd0,0,a)

Error 22: No Such partition

Press any key to continue

Note: Still I have not installed Solaris CD2, 3,4

What should I do to fix the GRUB boot ?

Do I need to fix Linux GRUB or Solaris GRUB ?

Link to post
Share on other sites
I have two Hard disks, on Primary master I installed windows (XP and 2003).

On the Primary Slave I installed FC4 and Mandrake 10, and Solaris V10 1/06 (with grub) on hdb1.

I configured FC4 bootloader (installed into MBR) to point to the location of Solaris [hdb1 or as GRUB read it (hd1,0)], and Mandrake 10.

I can boot FC4 and Manadrake without any problem.

The last OS that I have installed is Solaris 10 (1/06 support GRUB),I used Solaris CD1,and when CD has installed every thing , the system rebooted.

I have not touch FC4 Bootloader which resides into MBR.

When Solaris option is selected form the Linux GRUB menu, I received another GRUB menu (Solaris GRUB menu) then I chose form Solaris GRUB menu this :

'Solaris 10 1/06 s10x_u1wos_19a X86'

I received this error:

Booting 'Solaris 10 1/06 s10x_u1wos_19a X86'

root (hd0,0,a)

Error 22: No Such partition

Press any key to continue

Note: Still I have not installed Solaris CD2, 3,4

What should I do to fix the GRUB boot ?

Do I need to fix Linux GRUB or Solaris GRUB ?

I would install linux first and then solaris 10. some Linux distros do not have the correct grub (newest to handle the solaris 10 UFS )

once you install linux copy its grub conf file..

install solaris 10 and have it install its grub on the mbr, edit the grub config

under /boot/grub

make sure you have kernel commands

kernel /platform/i86pc/multiboot

or elese it will not look for other options..

Link to post
Share on other sites
install solaris 10 and have it install its grub on the mbr, edit the grub config

Since I have installed Linux bootloader into MBR first (before solaris), what is the right adding should be configured within linux grub boot menu to point to solaris location ?

Because Solaris grub bootloader has different convension for naming device, it use format (hdx,y,a), where "a" refer to slice number.

Link to post
Share on other sites

I know when I ran bsd, which also used slices, I booted it two different ways. One was was to chainload it. This did not have to point to the slice, only the partition. you may want to try this.

title Solaris
rootnoverify (hd0,0)
makeactive
chainloader +1

I also booted bsd directly with grub, by specifying thje location of the bsd kernel(I think that is what I pointed it at). Solaris you may do something like this. In my example, "d" is the slice where multiboot and boot_archive are found.

title Solaris 
root (hd0,0,d)
kernel /platform/i86pc/multiboot
module /platform/i86pc/boot_archive

You may just have the easiest time using the top method. Both should work. The bottom may require the newest version of grub as iccaros mentioned. I am not usre is this is a new version of grub or a patched version(just for solaris) of grub. I think the chainloading method will work with any version of grub.

Edited by shanenin
Link to post
Share on other sites
I know when I ran bsd, which also used slices, I booted it two different ways. One was was to chainload it. This did not have to point to the slice, only the partition. you may want to try this.

This is what I did it did not work.

title Solaris
rootnoverify (hd1,0)
makeactive
chainloader +1

Then I did below (I guess it is wrong):

title Solaris
rootnoverify (hd1,0,a)
makeactive
chainloader +1

In my example, "d" is the slice where multiboot and boot_archive are found.

How can you decide what the right letter (a,b,d,,,etc) to be used ? since I can not access Solaris OS

The bottom may require the newest version of grub as iccaros mentioned.

Is there newest version of Solaris than the version i am installing ?

Link to post
Share on other sites
Is there newest version of Solaris than the version i am installing ?

You need the newest version of grub, because grub wasn't able to recognize Solaris UFS until recently.

GRUB as obtained from sources other than Sun does not currently recognize Solaris on-disk VTOC and UFS formats. Sun has submitted changes to the GRUB project to support this; until they have been integrated, only the Solaris GRUB will work. If Linux installed GRUB on the master boot block, you will not be able to get to the Solaris OS even if you make the Solaris partition the active partition. In this case, you can chainload from the Linux GRUB by modifying the menu on Linux.
This is from the grub tutorial from Suns website.
Link to post
Share on other sites

Let me explain to you what is my concern, then you can correct me if I misunderstood you.

1- I had installed before this version of Solaris , the other version of Solaris (Solaris without grub), I had not problem to boot solaris by modifing FC4 bootloader which resides into MBR,,,,Is this clear ?

2- I deleted the old version of solaris, I installed the new version of solaris (Solaris Express 1/06, support GRUB, not Express Solaris).

3- Still I am using FC4 bootloader to point to Solari location, i am not using Solaris bootloader to boot OSs.

You need the newest version of grub, because grub wasn't able to recognize Solaris UFS until recently.

A- Do you mean new version of grub FC4 OS ?

B- Do you mean FC4 grub can not recognize new Solaris UFS (note that FC4 grub has recognized Solaris V10 as I mentioned in point 1)

If Linux installed GRUB on the master boot block, you will not be able to get to the Solaris OS even if you make the Solaris partition the active partition. In this case, you can chainload from the Linux GRUB by modifying the menu on Linux.

This is what I did for both Solaris (the one that supports GRUB, and the one that does not support GRUB), it worked with one that has not got GRUB, and it did not work with one that has GRUB.

I hope I have explained it well and with details.

Edited by zillah
Link to post
Share on other sites
Let me explain to you what is my concern, then you can correct me if I misunderstood you.

1- I had installed before this version of Solaris , the other version of Solaris (Solaris without grub), I had not problem to boot solaris by modifing FC4 bootloader which resides into MBR,,,,Is this clear ?

2- I deleted the old version of solaris, I installed the new version of solaris (V10 1/06, support GRUB, not Express Solaris).

3- Still I am using FC4 bootloader to point to Solari location, i am not using Solaris bootloader to boot OSs.

You need the newest version of grub, because grub wasn't able to recognize Solaris UFS until recently.

A- Do you mean new version of grub FC4 OS ?

B- Do you mean FC4 grub can not recognize new Solaris UFS (note that FC4 grub has recognized Solaris V10 as I mentioned in point 1)

If Linux installed GRUB on the master boot block, you will not be able to get to the Solaris OS even if you make the Solaris partition the active partition. In this case, you can chainload from the Linux GRUB by modifying the menu on Linux.

This is what I did for both Solaris (the one that supports GRUB, and the one that does not support GRUB), it worked with one that has not got GRUB, and it did not work with one that has GRUB.

I hope I have explained it well and with details.

its clear..

you installed the new solaris 10, it cahnged the ufs partition that grub on any linux can not read, or chain load since it can not read it. Sun screwed you.. hence we say load SUN's grub in the MBR and then point to FC4

I know it sucks.. but I have been using solaris for a long time, This is the first time they have done a major change to ufs, and they have upstreamed their changes to grub, but no one yet is using the cahnges..

Link to post
Share on other sites

Thnaks iccaros

hence we say load SUN's grub in the MBR and then point to FC4

1- I do not remember, but can we choose during a process of solaris installation, the position solaris's grub ?

2- If I installed Solaris GRUB into MBR, doesn't it screw FC4 bootloader ?

Link to post
Share on other sites

I think you would have two options. First, leave grub that fedora installed to the mbr. Then when installing solaris, choose to install its grub to your solaris patition. Then you should be able to chainload it.

A second option would be to have solaris install grub to the mbr and then add the location of your fedora core install to the newly made grub.conf(or menu.1st).

Link to post
Share on other sites
First, leave grub that fedora installed to the mbr. Then when installing solaris, choose to install its grub to your solaris patition. Then you should be able to chainload it.

1- This is what I had done, but without success.

2- During Solaris v10 1/06 (Not Solaris Express) installation (CD1 only, I have not used CD2,3,4 yet) I did not find an option (may be I did not pay attention to it) to choose the location (position,,,kindly see post #11)) for Solaris's GRUB, therefore by default it was installed into Solaris partition (i.e not into MBR).

Edited by zillah
Link to post
Share on other sites

to install Solaris grub to the MBR

installgrub -m <stage1> <stage2> /dev/rdsk/<root slice>.

from SUN

GRUB is normally installed in the Solaris slice. Would there be circumstances where it should be installed in the Master Boot Record (MBR) instead?

A:

If you install GRUB into the Master Boot Record (installgrub -m <stage1> <stage2> /dev/rdsk/<slice>) the system will start with GRUB, no matter if the Solaris partition is activated or not.

But if you install a second OS that overwrites the MBR there is no chance to recover the Solaris version of GRUB except by booting from an installation DVD and running the installgrub command again.

So from the recovery perspective, you are probably better off leaving the Solaris 10 1/06 version of GRUB in the Solaris partition.

if you run the GUI install I believe you can right click on the deskop and open an xterm.. you will have to moount drives.. I will not have access to Solaris X86 until Sunday when I return home.. so I'm sorry If I can't give you step by step

Link to post
Share on other sites
to install Solaris grub to the MBR

installgrub -m <stage1> <stage2> /dev/rdsk/<root slice>.

from SUN

GRUB is normally installed in the Solaris slice. Would there be circumstances where it should be installed in the Master Boot Record (MBR) instead?

A:

If you install GRUB into the Master Boot Record (installgrub -m <stage1> <stage2> /dev/rdsk/<slice>) the system will start with GRUB, no matter if the Solaris partition is activated or not.

My understanding to what has mentioned that during the process of Solaris installation, I can not decide the location where GRUB will be installed {unlike Linux}, (i.e. by default GRUB will be installed into root slice within Solaris partition,,,,Am i right ?

if you run the GUI install I believe you can right click on the deskop and open an xterm.. you will have to moount drives..

I can not access the GUI for Solaris right now (be aware I was in the process of installing only CD1, I have not finished CD1 yet)

I will not have access to Solaris X86 until Sunday when I return home.. so I'm sorry If I can't give you step by step

Thanks for your help.

Link to post
Share on other sites
If you install GRUB into the Master Boot Record (installgrub -m <stage1> <stage2> /dev/rdsk/<slice>) the system will start with GRUB, no matter if the Solaris partition is activated or not.

Here I got confused because this "installgrub -m <stage1> <stage2> /dev/rdsk/<slice>" does not refer to the location for MBR,,,,,Am I right ?

Link to post
Share on other sites

your MBR should be the first slice of the first disk, but you may have one partiton and another with slices.. in this case its the first drive with the first partition..

Link to post
Share on other sites

I skimmed over most of the replies, but just by looking at the first post I can see your prob, though I'm not quite sure why sun didn't modify it. Since you are installing to the primary slave, everything has to be relative to hd1. The mbr grub is using hd1 in your conf, and you are chainloading solaris's grub.

Solaris's grub, however, has it specified as hd0 not hd1 (don't worry about the fact that your grub, the one on the MBR, can't read ufs, It's actually alot simpler to deal with it chainloaded, as grub's ufs support is still shaky with vendor extensions). You'll most likely need to mount the solaris slice's label a, edit the grub menu.lst there, and change it to use hd1. try man mount_ufs on your linux distros, or download a livecd that can mount basic ufs partitions (freesbie and schillix come to mind).

here's an explanation of how bsd style labels are enumerated in the linux kernel:

http://lists.gnu.org/archive/html/grub-dev...0/msg00020.html

along with other tidbits and caveats.

I hope this helps :)

Edited by Helio
Link to post
Share on other sites

Thanks Helio

You'll most likely need to mount the solaris slice's label a, edit the grub menu.lst there.

Since I can not access solaris OS, you meant I have to access Linux OS (FC4),then I have to mount solaris slice a, and after that I have to edit the menu.lst for Solaris OS itself not for FC4,,,,,,,didn't you ?

download a livecd that can mount basic ufs partitions (freesbie and schillix come to mind).

You meant instead of accessing the FC4 OS, I can modify the slice "a" by using live CDs that you have mentioned,,,,,,can I use knoppix V4.0.2 (since I have already got it) ?

Edited by zillah
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...