[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: grub2 can't find kernel with dual boot

From: Michael Evans
Subject: Re: grub2 can't find kernel with dual boot
Date: Thu, 13 Aug 2009 14:09:33 -0700

As Isaac was noting you should check that the names you are using are exact and what exists there.

It also seems that the way grub2 now works is to specify a default partition to work from with root, and search for files with that path -inside- of the partition.  It would operate similarly to this:

Mount sda7 somewhere
load the kernel somewhere/boot/vmlinuz-2.6.31-2-generic with the kernel command line ...
and the appended initrd from somewhere/boot/initrd.img-2.6.31-2-generic

Often distros and even admins building from scratch will create a symlink to . inside of boot, so that mounting /boot anywhere and looking for a file by boot/file/path seems to ignore the boot part of the filename.

You or your distro may also symlink the current initrd and kernel to an easier name, such as just initrd for the image and vmlinuz for the kernel.

On Thu, Aug 13, 2009 at 1:42 PM, Foxy <address@hidden> wrote:
No, both vmlinuz and initrd are on /dev/sda7 in the boot partition...

Isaac Dupree wrote:
Michael Evans wrote:
I am purely guessing here, but grub2 may use the same notation as grub.

sda7 would be hd(0,6)
sda8 would be hd(0,7)

no, GRUB 2 uses linux-like numbering.

In this context, the 'root' would probably be the same as in grub, it
specifies the root device for -grub-'s data (usually /boot).

What it specifies is where the paths are interpreted from.  It's the equivalent of saying

menuentry "Ubuntu karmic (development branch), kernel 2.6.31-2-generic (on /dev/sda6)" {
    linux (hd0,7)/boot/vmlinuz-2.6.31-2-generic root=UUID=6ad1f928-50b9-4aea-9495-95df46d08d58 ro quiet splash
    initrd (hd0,7)/boot/initrd.img-2.6.31-2-generic

Are your vmlinuz and initrd in fact on that partition and with those exact names (not, say, with any of the version numbers increased, or, on /dev/sda6...)


On Wed, Aug 12, 2009 at 2:57 PM, Foxy <address@hidden> wrote:

 I have Ubuntu 9.04 Jaunty as my main OS, where I have upgraded GRUB to
GRUB2. I have also installed Ubuntu 9.10 Karmic on separate partitions. I am
trying to boot Kramic, I have a message that I need to load kernel first. It
looks like GRUB2 cannot find kernel. Probably the problem is that I have
/boot on a separate partition.

This is my config:

/boot/grub/grub.cfg (Karmic entry):

menuentry "Ubuntu karmic (development branch), kernel 2.6.31-2-generic (on
/dev/sda6)" {
   set root=(hd0,7)
   linux /boot/vmlinuz-2.6.31-2-generic
root=UUID=6ad1f928-50b9-4aea-9495-95df46d08d58 ro quiet splash
   initrd /boot/initrd.img-2.6.31-2-generic


# / was on /dev/sda9 during installation
UUID=9018bfe2-9de3-4692-9883-fc2f875e6455 /               ext3    relatime,errors=remount-ro 0       1

# /boot was on /dev/sda8 during installation
UUID=c3eb67b1-7f8f-419b-a462-c79a6c76e5de /boot           ext2    relatime        0       2

# /home was on /dev/sda5 during installation
UUID=4802e809-ecaa-4932-bd01-4a816c0bbd4f /home           ext3    relatime        0       2

# /media/test_boot was on /dev/sda7 during installation
UUID=0c98fbe4-ed7c-4134-994a-07d49074e137 /media/test_boot ext2    relatime        0       2

# /test was on /dev/sda6 during installation
UUID=6ad1f928-50b9-4aea-9495-95df46d08d58 /test           ext3    relatime        0       2

blkid -c /dev/null:

/dev/sda2: UUID="4d5250be-75cf-4ce4-9295-ae5e2cabd441" TYPE="swap"
/dev/sda5: UUID="4802e809-ecaa-4932-bd01-4a816c0bbd4f" TYPE="ext3" - *my /home partition*
/dev/sda6: UUID="6ad1f928-50b9-4aea-9495-95df46d08d58" TYPE="ext3" - *Karmic / partition*
/dev/sda7: UUID="0c98fbe4-ed7c-4134-994a-07d49074e137" TYPE="ext2" - *Karmic /boot partition*
/dev/sda8: UUID="c3eb67b1-7f8f-419b-a462-c79a6c76e5de" TYPE="ext2" - *Jaunty /boot partition*
/dev/sda9: UUID="9018bfe2-9de3-4692-9883-fc2f875e6455" TYPE="ext3" - *Jaunty / partition*

reply via email to

[Prev in Thread] Current Thread [Next in Thread]