Kernel Panic Unable to mount root fs

E

Eich

Jungspund
Hallo liebe Unixboard-Gemeinde ;D,
gestern habe ich mir über meinen Paketmanager den neuen Linux-Kernel (2.6.27-4) geholt. Automatische Installation + Konfiguration hat super funktioniert. Wenn ich jetzt jedoch mit dem neuen Kernel boote bekomme ich folgende Fehlermeldung:
Code:
VFS: Unable to mount root fs on unknown-block(0,0)

Da ich vor kurzer Zeit schon ein mal den Kernel ausprobieren wollte und ein ähnliches Problem hatte habe ich die fstab angepasst:

Code:
# /etc/fstab: static file system information.
#
# <file system> 				<mount point>   <type>  <options>       		<dump>  <pass>
proc            				/proc           proc    defaults        		0       0
#/dev/hda1 oder sda1 oder UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58
UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58      	/               ext3    defaults,errors=remount-ro 	0	1
#/dev/sda6 oder hda6
UUID=81c9bdb3-db88-4a29-846b-87fd803ffd7f   	/home           ext3    defaults        		0       2
/dev/sda7       				/windows        vfat    defaults       			0       0
# oder hda5
#UUID=00000000-dcbe-0408-182e-86bf308b0408	
/dev/sda5					none            swap    sw              		0       0
/dev/hdb        				/media/cdrom0   udf,iso9660 user,noauto     		0       0

Kurze Erläuterung, ich habe gelesen das es besser ist die Partitionen nicht mit den /dev-Namen sondern mit ihren IDs einzutragen. Gesagt getan, lief damals auch gut! Angemerkt sei das zurzeit dieser Kernel lief/läuft -> 2.6.26-1-686, mein Problem dort ist, dass die Festplatten als IDE erkannt werden, es aber eigentlich SATA Platten sind, deshalb dieser wechseln zwischen hda und sda...

Das ganze ist jetzt nur eine Vermutung von mir, aber ich nehme an das mein Fehler mit der fstab zu tun hat, aber ich traue mich nicht die UUIDs weg zu nehmen und /dev/sda zu benutzen, da ich befürchte dann in den neuen sowie in den alten Kernel nicht mehr zu kommen (booten)!!

Jetzt hoffe ich auf euere geballtes Wissen ;D, ich kann euch gerne noch weitere Informationen zukommen lassen!

Danke im voraus!!
 
Falls du wirklich von keinem kernel mehr booten kannst ist nicht wirklich ein Problem, du kommst mit einer livecd sowieso wieder rein. Aber falls du änderungen in der /etc/fstab machst und dir nicht sicher bist was genau du machst würd ich dir ans herz legen ein backup von der funktionierenden anzulegen.

Es fällt mir schwer zu sagen was nicht hinhauen könnte, weil ein vorkompilierter kernel aus dem Packetmanager in der regel funktionieren sollte, du hast ja auch nicht viele möglichkeiten dran herumzubasteln.
 
Unterstützt denn der neue Kernel deine Hardware? Normalerweise bekommt man eine Liste welche Partitionen gefunden wurden, was steht da?
 
Also sda ausprobiert genauso wie hda, funktioniert beides nicht ;/, könnte diese HDA-Geschichte noch irgendwo hinterlegt sein?!?!?

Ich hab ein 3-4 Jahre altes Maxdata Notebook, ich nehme nicht an dass die HW zu alt dazu ist ;/, mit nv 6600 Go und P M mit 2 GHz SATA Platte etc....

Beim booten will er wie beschrieben die Partitionen anzeigen, da die root-Partition aber die erste ist die gemountet wird, ist klar das er mir die anderen gar nicht erst anzeigt weil er gleich abbricht!!
 
Das was dir fehlt ist in der /boot/grub/menu.lst zu finden, es geht um einen kernel parameter der lautet "root=/dev/sda1". Post deine /boot/grub/menu.lst dann schaun wir weiter.
 
So ich habe deinen Rat befolgt und ein paar Änderungen vorgenommen, leider ohne größeren Erfolg.... vielleicht könnt ihr mir weiterhelfen ;D, der Ansatz scheint gar nicht so schlecht zu sein!!

So:
Code:
hiddenmenu
# menu.lst - See: grub(8), info grub, update-grub(8)
#            grub-install(8), grub-floppy(8),
#            grub-md5-crypt, /usr/share/doc/grub
#            and /usr/share/doc/grub-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not change this entry to 'saved' or your
# array will desync and will not let you boot your system.
default		0

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout		3

# Pretty colours
color cyan/blue blink-white/black

## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line)  and entries protected by the
# command 'lock'
# e.g. password topsecret
## password
# password topsecret

#
# examples
#
# title		Windows 95/98/NT/2000
# root		(hd0,0)
# makeactive
# chainloader	+1
#
# title		Linux
# root		(hd0,1)
# kernel	/vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
##      kopt_2_6_8=root=/dev/hdc1 ro
##      kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/hda1 ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd0,0)

## should update-grub create alternative automagic boot options
## e.g. alternative=true
##      alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
##      lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=vga=789

## should update-grub lock old automagic boot options
## e.g. lockold=false
##      lockold=true
# lockold=false

## Xen hypervisor options to use with the default Xen boot option
# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0

## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
##      altoptions=(single-user) single
# altoptions=(single-user mode) single

## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
##      howmany=7
# howmany=all

## should update-grub create memtest86 boot option
## e.g. memtest86=true
##      memtest86=false
# memtest86=true

## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false

## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false

## ## End Default Options ##

title		Debian GNU/Linux, kernel 2.6.27.4linux-2.6.27.4
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.27.4linux-2.6.27.4 root=/dev/sda1 ro vga=789 #wurde manuell in sda1 geaendert (von hda1)

title		Debian GNU/Linux, kernel 2.6.27.4linux-2.6.27.4 (single-user mode)
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.27.4linux-2.6.27.4 root=/dev/sda1 ro single #wurde manuell in sda1 geaendert (von hda1)

title		Debian GNU/Linux, kernel 2.6.26-1-686
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.26-1-686 root=/dev/hda1 ro vga=789
initrd		/boot/initrd.img-2.6.26-1-686

title		Debian GNU/Linux, kernel 2.6.26-1-686 (single-user mode)
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.26-1-686 root=/dev/hda1 ro single
initrd		/boot/initrd.img-2.6.26-1-686

### END DEBIAN AUTOMAGIC KERNELS LIST

geändert wurde (das was Kommentiert wurde ;D ) kernel -> root -> sda1

zudem habe ich noch die device.map geändert....

Code:
(hd0)	/dev/sda

Dort wurde auch hda in sda geändert....

Vielleicht habt ihr noch eine Idee...

Danke

//EDIT: Irgendwo muss noch das HDA drin stecken...... was ist eigentlich mit der init-Datei unter dem neuen Kernel?!?!?

//EDIT2...................................................
Ich habe jetzt die mtab noch editiert, hat auch nichts gebracht.......
 
Zuletzt bearbeitet:
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
#/dev/hda1 oder sda1 oder UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58
UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58 / ext3 defaults,errors=remount-ro 0 1
#/dev/sda6 oder hda6
UUID=81c9bdb3-db88-4a29-846b-87fd803ffd7f /home ext3 defaults 0 2
/dev/sda7 /windows vfat defaults 0 0
# oder hda5
#UUID=00000000-dcbe-0408-182e-86bf308b0408
/dev/sda5 none swap sw 0 0
/dev/hdb /media/cdrom0 udf,iso9660 user,noauto 0 0

VFS: Unable to mount root fs on unknown-block(0,0)

Grüße, Blender3D
 
Sorry, aber ich kann euch beiden nicht folgen ;D

Blenders bearbeitete fstab hab ich abkopiert, hatt nicht funktioniert (mann kann das ganze ja über Leerzeichen oder mit Tab trennen?!?), trotzdem danke!!

Leider weis ich nicht was du mit "Einträgen"meinst marcellus?!?
Ich hatte leider jetzt erst Zeit wieder ins Forum zu schauen, trotzdem Danke für eure bisherige Hilfe ;D
 
Hey, hast du vllt ein Gentoo System?

Ich saß jetzt fast 10 Stunden daran mein System zu fixxen... Denn ich hatte grade genau den selben Fehler (Kernel update auf 26er).

Er wollte nicht mehr Starten bzw die Root Partition mounten. Anscheinend deswegen weil die den IDE/Sata-Stack irgendwie verändert haben. Jedenfalls konnte ich mit meiner Config nicht mehr Booten.

So musste ich meine Konfig neu bearbeiten. Doch dann wollte er immer noch nicht Booten.

Schlussendlich war es dieser Grund hier:
Code:
   [ ]     Support for SATA (deprecated; conflicts with libata SATA driver) (NEW)
Das wird anscheinend vom 2.6.26-gentoo-r3 Kernel nicht mehr unterstützt. Mit dem 2.6.25 kernel hatte ich mit der Option keine Probleme.

Nach 10 Stunden habe ich dann gemerkt das ich diese Option:
Code:
< > ATA/ATAPI/MFM/RLL support  --->
komplett deaktivieren kann und dafür diese Optionen:
Code:
<*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --->
     
[*]   ATA SFF support                                                                                            
          <*>     Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support
aktivieren....

Kontroller ist der Folgende:
Code:
IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)
Nach dieser Tortour gehe ich jetzt endlich schlafen...hoffe es konnte dir helfen.
 
Zuletzt bearbeitet von einem Moderator:
Tomekk: Das ist aber schon älter diese Umstellung. Ich benutze die neuen Treiber schon seit mind. nem halben Jahr...

EDIT: Ich meine sogar schon wesentlich länger, aber das weiss ich eben nicht sicher
 
So, es funktionieren beide 2.6.26-Einträge (normal und single user)... und es funktionieren beide 2.6.27-Einträge nicht ;D... Ich habe dort schon die UUID eingetragen, hat auch nicht funktioniert, ich habe das root= komplett weg gelassen dann sagt er mir wieder beim booten ->
VFS: Unable to mount root fs on unknown-block(3,1) <- hier hat sich das (0,0) in (3,1) verändert nachdem ich root weggelassen habe?
 
Naja, daß die 27er Einträge nicht funktionieren, ist mehr als logisch und der Grund sollte eigentlich Jedem beim Betrachten der menu.lst ins Auge fallen:

Ohne initrd wird dat nix!
 
Naja, daß die 27er Einträge nicht funktionieren, ist mehr als logisch und der Grund sollte eigentlich Jedem beim Betrachten der menu.lst ins Auge fallen:

Ohne initrd wird dat nix!

14 Postes lang fällt es nur dir auf. Respekt, hab es selber auch nicht gesehen :D
 
So und wie erstelle ich die initrd? Ich kann ja nicht die alte vom 26er nehmen oder?

Ja ich hab sowas in der Art ja schon angedeutet, aber das man zwingend eine braucht, das hab ich nicht gewusst, naja man lernt nie aus ;D

Also erstmal Danke für deine Hilfe, jetzt müsste mir nur noch einer erklären wie ich die initrd erstelle oder ggf. welche bestehende initrd ich da eintragen muss ;D
 
Also Debian erzeugt normalerweise beim Kernelupdate eine entspr. initrd zum neuen Kernel.
Guck doch mal in /boot, ob da nicht vielleicht schon die initrd zum neuen kernel liegt.
 
Zuletzt bearbeitet:
Okok, hab ich gleich gefunden, funktioniert auch, leider hab ich jetzt ein Problem das er bei "Waiting for root fs/device" stehen bleibt... grml.... vielleicht habt ihr ja eine schnelle Lösung (danke erstmal für den fix der jetzigen ;D )....

fstab:
Code:
# /etc/fstab: static file system information.
#
# <file system> 				<mount point>   <type>  <options>       		<dump>  <pass>
proc /proc proc defaults 0 0
#/dev/hda1 oder sda1 oder UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58
UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58 / ext3 defaults,errors=remount-ro 0 1
#/dev/sda6 oder hda6 oder UUID=81c9bdb3-db88-4a29-846b-87fd803ffd7f
UUID=81c9bdb3-db88-4a29-846b-87fd803ffd7f /home ext3 defaults 0 2
#/dev/hda7       				/windows        vfat    defaults       			0       0
# oder hda5
#UUID=00000000-dcbe-0408-182e-86bf308b0408	
/dev/sda5 none swap sw 0 0
/dev/hdb /media/cdrom0 udf,iso9660 user,noauto 0 0

menu.lst
Code:
## ## End Default Options ##

title		Debian GNU/Linux, kernel 2.6.27.4linux-2.6.27.4
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.27.4linux-2.6.27.4 root=UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58 ro vga=789 #wurde manuell in sda1 geaendert (von hda1)
initrd		/boot/initrd.img-2.6.27-1-486

title		Debian GNU/Linux, kernel 2.6.27.4linux-2.6.27.4 (single-user mode)
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.27.4linux-2.6.27.4 root=UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58 ro single #wurde manuell in sda1 geaendert (von hda1)
initrd		/boot/initrd.img-2.6.27-1-486

title		Debian GNU/Linux, kernel 2.6.26-1-686
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.26-1-686 root=/dev/hda1 ro vga=789
initrd		/boot/initrd.img-2.6.26-1-686

title		Debian GNU/Linux, kernel 2.6.26-1-686 (single-user mode)
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.26-1-686 root=/dev/hda1 ro single
initrd		/boot/initrd.img-2.6.26-1-686

### END DEBIAN AUTOMAGIC KERNELS LIST

device.map
Code:
(hd0)	UUID=04dc2736-9f8b-4c7d-baeb-b975860b7c58

Vielleicht habt ihr ne Idee.... mit den UUIDs sollte es doch eigentlich tun.... komisch!!

Gruß und Danke
 
Btw, das ist nur besser die Devices (/dev) mit der UUID zu mounten wenn sie sich dauernd ändern (sprich z.b externe platte).

Doch sollte deine Festplatte fest im PC sein (sprich wird nie ausgesteckt o.ä), dann kannst du auch die per /dev ansprechen. udev sollte dementsprechend handeln.
 

Ähnliche Themen

Raid-1 einrichten

Kernel Panic GRUB 2

Linux Kernel VFS Panic HP Thin Client

Externe Festplatte mountet nicht mehr !

Windows clients können nicht mehr auf lange laufendes System zugreifen

Zurück
Oben