# [solved] Lenovo T400: Unable to mount root fs

## duga3

Hi,

wieder mal das typische Problem, das schon xmal im Internet abgehandelt wurde...

Ich hab einen nagelneuen Lenovo T400 und hab mir Gentoo per Ubuntu Live-CD drauf installiert. Soweit so gut, alles installiert. 2.6.27-r2 kernel installiert und wie üblich konfiguriert.

Hab einen ICH-9M-E SATA Controller.

Als SATA Controller AHCI ausgewählt, zur Sicherheit auch noch alles andere was von Intel da ist fest einkompiliert und Ext3 mit allen erweiterten Attributen einkompiliert.

Nach einem Neustart hat er mir gleich GRUB geladen und ich wollte Gentoo starten. Dann findet er meine ganze Hardware und dann bekomme ich eine Kernel panic mit folgender Meldung:

```
Kernel panic: VFS: Unable to mount root fs on unknown-block(8,5)
```

Darüber zeigt er mir eine Liste meiner Partitionen und schreibt, dass sda5 ungültig ist, was aber falsch ist.

Hier kurz meine Partitionen:

/dev/sda1: Windows

/dev/sda2:  /boot

/dev/sda3: swap

/dev/sda5: /

/dev/sda6: /home

Ich hab den Kernel schon öfters neu kompiliert mit verschiedenen anderen Einstellungen, komme jedoch zu nichts.

Hab schon die typischen Probleme durch Internet-Recherchen ausgeschlossen: Ext3 ist fest einkompiliert, SCSI Disk support, SATA Treiber fest einkompiliert.

Ich hoffe, jemand von euch kann mir helfen!Last edited by duga3 on Sat Nov 15, 2008 7:34 pm; edited 1 time in total

----------

## sicus

mach mal ein 

```

fdisk -l /dev/sda

```

undzeig mal deine fstab.

ist die platte eine IDE oder SATA platte? wenn es eine IDE platte ist kann es durchaus sein daß gentoo diese als hda und nicht als sda erkennt. es kann passieren daß der eine kernel deine IDE platten als sda und der andere als hda bezeichnet, das ist abhängig davon, ob dein kernel mit ide-scsi gebaut wurde. evtl. ist deine fstab nur falsch.

----------

## Hollowman

Hi

Lass dir ma in der Grub Konsole die Platte Reihenfolge anzeigen. Bei mir ist die Reihenfolge in Grub anders wie dann im System.

z.B.

Im System:

/dev/sda1 boot

/dev/sda2 swap

/dev/sda3 root

/dev/sdb1 Daten

/dev/sdc1 Windows Vista

Im Grub:

/dev/sda1 boot

/dev/sda2 swap

/dev/sda3 root

/dev/sdb1 Windows Vista

/dev/sdb1 Daten

Und poste ma deine grub.conf.

Sebastian

----------

## sicus

wenn ich mir die fehlermeldung nochmal genauer anschaue wirds am root bzw. real_root kernel parameter liegen. diese sollte etwa so aussehen:

```

kernel /boot/vmlinuz root=/dev/sda5 [weitere parameter]

```

weitere möglichkeit:

die ext2/3 sachen hast hoffentlich in den kernel eingebaut und nicht als module compiliert? als module geht das nämlich nicht weil er ja erst das fs mounten müsste auf dem die module liegen.

zeig mal die kernel zeile in deiner menu.lst

----------

## duga3

Hier die Ausgabe von fdisk -l

```

Disk /dev/sda: 160.0 GB, 160041885696 bytes

240 heads, 63 sectors/track, 20673 cylinders

Units = cylinders of 15120 * 512 = 7741440 bytes

Disk identifier: 0x213f9bcd

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1        3876    29302528+   7  HPFS/NTFS

/dev/sda2            3877        3881       37800   83  Linux

/dev/sda3            3882        4140     1958040   82  Linux swap / Solaris

/dev/sda4            4141       20673   124989480    5  Extended

/dev/sda5            4141        8016    29302528+  83  Linux

/dev/sda6            8017       20673    95686888+  83  Linux

```

fstab hab ich jetzt nicht kopiert, schaut aber so aus:

```

/dev/sda2   /boot        ext2    defaults,noatime     1 2

/dev/sda3   none         swap    sw                   0 0

/dev/sda5   /            ext3    noatime              0 1

/dev/sda6   /home    ext3     noatime              0 2

/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0

```

Wie schon vorher angegeben, ext3 hab ich *nicht* als Modul kompiliert, sondern fest in den Kernel.

Hier meine grub.conf

```

default 1

timeout 10

#splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title Gentoo Linux 2.6.27-gentoo-r2

root (hd0,1)

kernel /boot/kernel-2.6.27-gentoo-r2 root=/dev/sda5 video=uvesafb:mtrr:3,ywrap,1024x768-32@60 

title Windows XP

rootnoverify (hd0,0)

makeactive

chainloader +1

```

Es geht auch nicht, wenn ich uvesafb weglasse.

----------

## duga3

pump

----------

## Hollowman

Hast du beim booten ma in der Grub Console nach der Plattenreihenfolge geguckt?

Sebastian

----------

## duga3

Wenn du mir den Befehl sagst, mach ichs.

----------

## Max Steel

Am einfachsten mit 

root (hd<TAB><TAB>

root (hd0<TAB><TAB>

root (hd1<TAB><TAB>

Und immer so weiter tabben, in jeder Festplatte, dann kannst du dir in etwa herausleiten wie er die Festplatten aufgebaut hat.

----------

## duga3

Ok, hab das jetzt gemacht, es sieht alles so aus, wie es soll.

hd(0,0) ist NTFS, was grub als unknown file system zeigt

hd(0,1) ist ext2 die bootpartition

hd(0,2) swap kennt er auch nicht, passt

hd(0,3) extended

hd(0,4) /

hd(0,5) /home

das Problem liegt glaub ich weniger an GRUB, als am kernel, der nicht checkt, wo /dev/sda5 liegt, er sucht immer auf block 8,5 und kriegt deshalb unknown block.

----------

## Max Steel

Könnte es theoretisch sein das du statt libata den alten IDE-Treiber verwendest und du deshalb /dev/hda5 angeben musst?

An diesem Punkt ist die Kernelconfig interresant.

Einfach mal auf nopaste hochladen:

cat /usr/src/linux/.config | nopaste

Vorher evtl. nopaste (gleichnamiges Paket) installieren.

----------

## duga3

nein, IDE ist garnicht einkompiliert, weil ich kein IDE devices hab.

Er zeigt mir außerdem, dass sda5 keine gültige angabe ist und darunter eine Übersicht über meine Partitionen, wo wiederrum /dev/sda5 vorkommt, also recht eigenartig.

----------

## duga3

War ein Problem mit uvesafb, habs rausgenommen jetzt gehts.

jetzt bin ich dran, den grafiktreiber zu installieren.

----------

