[DEBIAN] Kernel panic - nie mogę uruchomić jądra 3.1


(Mar Sikorski) #1

Witam!

Skompilowałem sobie jądro linuxa 3.1. Jednakże nie mogę z niego korzystać, gdyż podczas uruchamiania wywala:

kernel panic not syncing vfs unable to mount root fs on unknown-block

Szukałem rozwiązania w internecie, lecz nie zalazłem zadawalającej mnie odpowiedzi. Więc może ktoś z Was będzie w stanie mi pomóc. Mam cichą nadzięję, że obędzie się bez rekompilacji jądra.

/etc/fstab:

# /etc/fstab: static file system information.

#

# Use 'blkid' to print the universally unique identifier for a

# device; this may be used with UUID= as a more robust way to name devices

# that works even if disks are added and removed. See fstab(5).

#

# 

proc /proc proc defaults 0 0

# / was on /dev/sda7 during installation

UUID=5e24ae8f-a65c-44e1-91f7-b02339f0e1ab / ext4 errors=remount-ro 0 1

# swap was on /dev/sda8 during installation

UUID=4d907cdf-9979-4ecd-8803-cfb31d2df0bb none swap sw 0 0

/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0

/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

/boot/grub/grub.cfg:

#

# DO NOT EDIT THIS FILE

#

# It is automatically generated by grub-mkconfig using templates

# from /etc/grub.d and settings from /etc/default/grub

#


### BEGIN /etc/grub.d/00_header ###

if [-s $prefix/grubenv]; then

  load_env

fi

set default="0"

if ["${prev_saved_entry}"]; then

  set saved_entry="${prev_saved_entry}"

  save_env saved_entry

  set prev_saved_entry=

  save_env prev_saved_entry

  set boot_once=true

fi


function savedefault {

  if [-z "${boot_once}"]; then

    saved_entry="${chosen}"

    save_env saved_entry

  fi

}


function load_video {

  insmod vbe

  insmod vga

  insmod video_bochs

  insmod video_cirrus

}


insmod part_msdos

insmod ext2

set root='(hd0,msdos7)'

search --no-floppy --fs-uuid --set 5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

if loadfont /usr/share/grub/unicode.pf2 ; then

  set gfxmode=640x480

  load_video

  insmod gfxterm

fi

terminal_output gfxterm

insmod part_msdos

insmod ext2

set root='(hd0,msdos7)'

search --no-floppy --fs-uuid --set 5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

set locale_dir=($root)/boot/grub/locale

set lang=pl

insmod gettext

set timeout=5

### END /etc/grub.d/00_header ###


### BEGIN /etc/grub.d/05_debian_theme ###

insmod part_msdos

insmod ext2

set root='(hd0,msdos7)'

search --no-floppy --fs-uuid --set 5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

insmod png

if background_image /usr/share/images/desktop-base/spacefun-grub.png; then

  set color_normal=light-gray/black

  set color_highlight=white/black

else

  set menu_color_normal=cyan/blue

  set menu_color_highlight=white/blue

fi

### END /etc/grub.d/05_debian_theme ###


### BEGIN /etc/grub.d/10_linux ###

menuentry 'Debian GNU/Linux, with Linux 3.1.0' --class debian --class gnu-linux --class gnu --class os {

	insmod part_msdos

	insmod ext2

	set root='(hd0,msdos7)'

	search --no-floppy --fs-uuid --set 5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

	echo	'Loading Linux 3.1.0 ...'

	linux	/boot/vmlinuz-3.1.0 root=/dev/sda7 ro quiet

}

menuentry 'Debian GNU/Linux, with Linux 3.1.0 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {

	insmod part_msdos

	insmod ext2

	set root='(hd0,msdos7)'

	search --no-floppy --fs-uuid --set 5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

	echo	'Loading Linux 3.1.0 ...'

	linux	/boot/vmlinuz-3.1.0 root=/dev/sda7 ro single 

}

menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686' --class debian --class gnu-linux --class gnu --class os {

	insmod part_msdos

	insmod ext2

	set root='(hd0,msdos7)'

	search --no-floppy --fs-uuid --set 5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

	echo	'Loading Linux 2.6.32-5-686 ...'

	linux	/boot/vmlinuz-2.6.32-5-686 root=UUID=5e24ae8f-a65c-44e1-91f7-b02339f0e1ab ro quiet

	echo	'Loading initial ramdisk ...'

	initrd	/boot/initrd.img-2.6.32-5-686

}

menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-686 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {

	insmod part_msdos

	insmod ext2

	set root='(hd0,msdos7)'

	search --no-floppy --fs-uuid --set 5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

	echo	'Loading Linux 2.6.32-5-686 ...'

	linux	/boot/vmlinuz-2.6.32-5-686 root=UUID=5e24ae8f-a65c-44e1-91f7-b02339f0e1ab ro single 

	echo	'Loading initial ramdisk ...'

	initrd	/boot/initrd.img-2.6.32-5-686

}

### END /etc/grub.d/10_linux ###


### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###


### BEGIN /etc/grub.d/30_os-prober ###

### END /etc/grub.d/30_os-prober ###


### BEGIN /etc/grub.d/30_otheros ###


# This entry automatically added by the Debian installer for a non-linux OS

# on /dev/sda1

menuentry "Windows Vista (loader)" {

	set root=(hd0,msdos1)

	search --no-floppy --fs-uuid --set acfc1f02fc1ec70c

	chainloader +1

}

### END /etc/grub.d/30_otheros ###


### BEGIN /etc/grub.d/40_custom ###

# This file provides an easy way to add custom menu entries. Simply type the

# menu entries you want to add after this comment. Be careful not to change

# the 'exec tail' line above.

### END /etc/grub.d/40_custom ###


### BEGIN /etc/grub.d/41_custom ###

if [-f $prefix/custom.cfg]; then

  source $prefix/custom.cfg;

fi

### END /etc/grub.d/41_custom ###

polecenie fdisk:

Urządzenie Rozruch Początek Koniec Bloków ID System

/dev/sda1 1 2550 20481024 7 HPFS/NTFS

Partycja 1 nie kończy się na granicy cylindra.

/dev/sda2 2551 19456 135797414+ f W95 Rozsz. (LBA)

/dev/sda5 2551 8924 51197812 7 HPFS/NTFS

/dev/sda6 8925 16708 62523058+ 7 HPFS/NTFS

/dev/sda7 * 16708 19322 20994088+ 83 Linux

/dev/sda8 19323 19456 1076323+ 82 Linux swap / Solaris

Z góry dzięki za pomoc.


(dragonn) #2

Rozumiem że polecenie fdisk -l to z innego jądra? Sprubuj jeszcze zmienić w grub.cfg:

root=/dev/sda7

Na:

root=UUID=5e24ae8f-a65c-44e1-91f7-b02339f0e1ab

Jeżeli to nie pomoże to pewnie przy konfiguracji wywaliłeś sterowniki do dysku twardego lub/i do systemu plików.


(Mar Sikorski) #3

Polecenie fdisk wykonane było z jądra 2.6.32-5-686.


(dragonn) #4

Tak też myślałem, jeżeli zmiana którą podałem nie pomogła to wywaliłeś przy konfiguracji sterowniki do dysku twardego lub/i do systemu plików (po komunikacie stawiam na system plików). Musisz poprawić config jądra i go zrekompilować (ale jeżeli nie wyczyścisz źródeł i w configu nie będziesz nic więcej zmieniał to nie będzie to pełna rekomplacja, zostanie tylko do kompilowany sterownik i jądro na nowo spakowane).


(Mar Sikorski) #5

Chyba będzie tak jak Ty piszesz, gdyż zmiany w grub.cfg nic nie dały. No nic jutro zabiore się za to jeszcze raz i dam znać.

Dzięki!

-- Dodane 03.11.2011 (Cz) 20:40 --

Przekompilowałem jądro, lecz niestety to nie pomogło.

Ma ktoś jeszcze jakiś pomysł? Podczas wyszukiwania rozwiązania w internecie, natknąłem się na coś co nazywa się initrd. Czy to może mieć jakiś związek?


(djgrzenio) #6

jak dragonn będzie to albo brak sterownika do kontrolera dysku a może brak obsługi systemu partycji w jakim masz system, czyli pewnie ext4, o ile pamiętam domyślnie w jaju pobranym w kernel.org trzeba to zaznaczyć.


(mateo14) #7

Nie wiem, czy to pomoże, ale raz udało mi się uratować system przy tym komunikacie:

"OK assuming that /dev/sda1 is the partition Linux is installed on.

Get root access:

sudo -i

Mount it:

mount /dev/sda1 /mnt

Change root to it:

chroot /mnt

Regenerate the initrid.gz file:

update-initramfs -d

update-initramfs -c

From the manpage:

http://manpages.ubuntu.com/manpages/luc ... mfs.8.html

The "update-initramfs -d" deletes the initrd.gz and "update-initramfs -c" cretes a new one

If that does not work try re-installing the system and if the error is still there it could either a hardware fault or a hardware incompatibility on the 10.10 kernel"

http://ubuntuforums.org/showthread.php?t=1618195&page=2

ech. Ten okropny komunikat to spadek po systemie Unix, ktory straszy ludzi od ponad 40 lat:

"Napomknąłem Dennisowi, że przynajmniej połowa kodu, który pisałem w MULTICSie, była kodem naprawiającym błędy. Powiedział wtedy: "Daliśmy sobie z tym spokój. Jeśli wystąpi błąd, to mamy procedurę nazwaną panic i jeżeli jest wywoływana, komputer się zawiesza, a ty wrzeszczysz na cały pokój 'Hej, zresetuj go."


(Mar Sikorski) #8

Dzięki za odpowiedzi. Spróbuję się za to zabrać po raz kolejny.