opensuse 10.3/10.2 grub boot challenge

All,

I just upgraded an old PC from openssue 10.2 to 10.3, works fine.

10.3 runs 2.6.22.19-0.1-default. I then wanted to add the old 10.2
kernel, and at boot, choose which kernel i needed. Granted - booting the
older kernel - some things will not work.

point is one application that cannot run with the newer kernel.

/boot/grub/menu.lst works fine for the new kernel:

NEW KERNEL - WORKS

###Don’t change this comment - YaST2 identifier: Original name:
linux-2.6.22.19-0.1-default###
title openSUSE 10.3 - 2.6.22.19-0.1
root (hd0,5)
kernel /boot/vmlinuz-2.6.22.19-0.1-default root=/dev/sda6 vga=0x31a
resume=/dev/sda5 splash=silent showopts
initrd /boot/initrd-2.6.22.19-0.1-default

OLD KERNEL - FAILS

title openSUSE 10.3 - 2.6.18.2-34 (default)
rootnoverify (hd0,5)

kernel /boot/vmlinuz-2.6.18.2-34-default root=/dev/hda6 vga=0x31a

resume=/dev/hda5 splash=silent showopts
kernel /boot/vmlinuz-2.6.18.2-34-default root=/dev/hda6 vga=0x31a
resume=/dev/hda5 splash=silent showopts
initrd /boot/initrd-2.6.18.2-34-default

/boot/grub/device.map:
(fd0) /dev/fd0
(hd0) /dev/sda
(hd1) /dev/sdb

fdisk -l:

Device Boot Start End Blocks Id System
/dev/sda1 * 1 1702 13671283+ c W95 FAT32 (LBA)
/dev/sda2 1703 3005 10466347+ 93 Amoeba
/dev/sda3 3006 5473 19824210 f W95 Ext’d (LBA)
/dev/sda5 * 3006 3055 401593+ 82 Linux swap / Solaris
/dev/sda6 3056 5473 19422553+ 83 Linux

  • the linux root filesystem is /dev/sda6 - yes, i know - a mess.

So I installed and compiled the older kernel from source, installed,
etc…and then copied and modified this entry for the 2nd older kernel
to be able to boot from GRUB.

however; it seems grub does not see this kernel properly at /dev/sda,
but appears to recognize the hard disk at /dev/hda. the boot then fails
saying (paraphrase)

waiting for device /dev/sda6 to appear.
then later:

(some USB messages…etc…etc…)
want me to fall back to sda6 ?

it seems the old kernel is somehow confusing /dev/sda6 with some USB
drive it expects ?

Any tips on how i can fix this and get these 2 kernels to live together ?

Thanks in advance

Wrong forum. Moved to Install/boot

Andy

The problem you are encountering is due to a very fundamental change between the 2 kernel versions. libata was standardized using scsi emulation for all disk drives; this is the reason for the change from “h” to “s” device-id convention. So each kernel uses a different set of modules which interact differently with the kernel.