GRUB problems with SUSE 10.3

Posted on 2007-10-07
Last Modified: 2013-12-16
I am having trouble installing GRUB under SUSE 10.3 (final version released this week). I want to install it into my /dev/sdb6 partition, which is where I installed SUSE. I don' t want to install it into the MBR because I already have another boot manager there. This is the first time that I have trouble installing GRUB under SUSE and I suspect it's something related to this new version 10.3. I particularly do not understand why SUSE keeps referring to my sdb6 partition as sdb6,5. Any ideas?

Some data:

1) Output of the command "grub-install /dev/sdb6":
    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename. ]
grub> setup --stage2=/boot/grub/stage2 (/dev/sdb6,5) (/dev/sdb6,5)

Error 23: Error while parsing number
grub> quit

2) Contents of the file
(hd0)   /dev/mapper/nvidia_ifaddacf
(fd0)   /dev/fd0
(hd2)   /dev/sdb0

3) Contents of the /boot/grub directory
-rw------- 1 root root     65 Oct  7 12:23
-rw------- 1 root root     65 Oct  7 11:24
-rw-r--r-- 1 root root   7576 Sep 21 18:59 e2fs_stage1_5
-rw-r--r-- 1 root root   7424 Sep 21 18:59 fat_stage1_5
-rw-r--r-- 1 root root   6664 Sep 21 18:59 ffs_stage1_5
-rw-r--r-- 1 root root   6656 Sep 21 18:59 iso9660_stage1_5
-rw-r--r-- 1 root root   8128 Sep 21 18:59 jfs_stage1_5
-rw------- 1 root root   1511 Oct  7 12:23 menu.lst
-rw------- 1 root root   1511 Oct  7 11:24 menu.lst.old
-rw-r--r-- 1 root root   6844 Sep 21 18:59 minix_stage1_5
-rw-r--r-- 1 root root   9160 Sep 21 18:59 reiserfs_stage1_5
-rw-r--r-- 1 root root    512 Sep 21 18:59 stage1
-rw-r--r-- 1 root root 103162 Oct  7 02:42 stage2
-rw-r--r-- 1 root root   7004 Sep 21 18:59 ufs2_stage1_5
-rw-r--r-- 1 root root   6228 Sep 21 18:59 vstafs_stage1_5
-rw-r--r-- 1 root root   8820 Sep 21 18:59 xfs_stage1_5

Question by:gsaito
    LVL 13

    Assisted Solution

    try grub-install --recheck /dev/sdb

    You need to install the grub boot instructions to the MBR of a drive, not a partition.
    LVL 13

    Expert Comment

    and if you already have another loader there, you will need to add the other OS to your grub.conf and still install it in the MBR.
    LVL 21

    Accepted Solution

    The device map looks wrong.

    Assuming that you have  a PATA disk and a SATA disk,

    hd0 should be  /dev/hda ( or /dev/sda)
    hd1 should be /dev/sdb

    Hd2 will not exist unless you have 3 drives.

    sdb6 is the wrong syntax

    I have seen the "mapper" entry on 2 machines with SATA controllers with Raid capability, on both I had to edit the device map to install grub correctly, even when installing to the MBR.

    grub cannot make sense of the instuction to install to /dev/sdb6
    the 6,5 refers to the 6th partition on disk 7  (remember grub counts from 0)

    I have one PATA disk and one SATA disk, my device map now looks like this:

    (fd0)      /dev/fd0
    (hd0)      /dev/sda
    (hd1)      /dev/sdb

    for grub syntax, look here

    LVL 21

    Assisted Solution


    the line "the 6,5 refers to the 6th partition on disk 7  (remember grub counts from 0)"

    is not very clear.

    it perhaps should read"the 6,5 refers to disk 7, partition 6  (remember grub counts from 0, and extended partitions start at 4)


    Author Comment

    Thanks for all the feedbacks.

    I don't think I necessarily need to install GRUB to the MBR. As a matter of fact, I never did so in previous installations. For instance, I have Ubuntu 7.04 installed in another partition [(hd2,5) or /dev/sdb6)], and GRUB installed in that same partition. I have another bootloader (BootIt, my favorite) that resides in MBR. When I want to boot Ubuntu, BootIt will initiate boot on (hd2,5), which automatically initiates GRUB in that partition. I end up going through 2 boot loaders before effectively booting the OS, but it works nicely.

    I have 4 hard disks, all SATA. Two of them are linked in NVIDIA's nForce RAID1 mode.
    I think SUSE 10.3 got the device map plain wrong, I had to redo it by hand as follows:

    (hd0) -> /dev/sda
    (hd1) -> /dev/sdc
    (hd2) -> /dev/sdb
    (hd3) -> /dev/sdd

    I installed SUSE in the 6th partition on drive 2, therefore (hd2,5) using GRUB nomenclature, or /dev/sdb6 using Linux nomenclature. I still don't understand why SUSE installation routine kept referring to my partition as sdb6,5. This seems like wrong syntax (like mixing GRUB and Linux nomenclatures...).

    I managed to solve it myself by (i) redoing from scratch, (ii) manually editing the menu.lst file so as to have it refer to (hd2,5) as opposed to the crazy sdb6,5 nomenclature, (iii) manually installing GRUB to (hd2,5) using a GRUB boot diskette, (v) running GRUB's setup command from GRUB's boot menu.

    That solved the problem. GRUB is installed in my (hd2,5) partition and is activated by my BooIt bootloader that resides in the MBR. I just don't understand why it was so troublesome to get it working. Previous SUSE installations (everyone since 9.3) would accomplish this straightforward from the installation program.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Do You Know the 4 Main Threat Actor Types?

    Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

    Little introduction about CP: CP is a command on linux that use to copy files and folder from one location to another location. Example usage of CP as follow: cp /myfoder /pathto/destination/folder/ cp abc.tar.gz /pathto/destination/folder/ab…
    Linux users are sometimes dumbfounded by the severe lack of documentation on a topic. Sometimes, the documentation is copious, but other times, you end up with some obscure "it varies depending on your distribution" over and over when searching for …
    Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
    Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…

    758 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    11 Experts available now in Live!

    Get 1:1 Help Now