Kernel Panic - not syncing mit neuem Kernel

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 23.11.2015 15:40:22

Hallo Forum,

ich als Linux Anfänger habe mich an einem selbst kombliliertem Kernel versucht.
Leider mit bescheidem Erfolg. Kann mir bitte jemand weiterhelfen - Danke.

ich hab einen neuen Kernel 4.2.6 auf meinem bisherigen Linux (3.2.0-4) fertig kombiliert.
Bin wie folgt vorgegangen:
make defconfig
make menuconfig
make
make Modules_Install
update initramfs 4.2.6
bzImage und System.map ins /boot Verzeichnis kopiert.
bzimage in Linuz-4.2.6 umbenannt
System.map in System.map-4.2.6 umbenannt.
update-grub ausgeführt.


Möchte ich den neuen Kernel jetzt booten, bekomme ich nur:
Kernel Panic -not synching:VFS:Unable to mount root fs on unknown-bolck(0,0)

Was habe ich falsch gemacht, bzw. wie kann ich den Fehler suchen ?

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von smutbert » 23.11.2015 16:00:47

Willkommen im Debianforum,


das /-Dateisystem, in dem Fall wohl die initrd kann nicht gemountet werden, bzw. wenn du ohne initrd zu booten versuchst, fehlen dem Kernel womöglich Treiber um auf das /-Dateisystem zuzugreifen.

Das Vorgehen ließe sich aber auch deutlich vereinfachen, indem du den Kernel auf Debian-Art baust, dann bekommst du ein Debianpaket heraus, das du nur zu installieren brauchst und initrd wie Bootmenüeintrag werden automatisch bei der Installation angelegt.
Dazu benötigt man afaik nur die Kernelquellen, Debiankernel-package und ev. Debianbuild-essential.

Die etwas älteren Art mit make-kpkg ist hier beschrieben
http://wiki.ubuntuusers.de/kernel/kompilierung
https://www.debian.org/releases/lenny/i ... 06.html.de

und die aktuelle Art, die wohl zu bevorzugen ist, die ich aber noch nicht aus eigener Erfahrung kenne, weil ich schon seit Ewigkeiten keinen Kernel mehr kompiliert habe, ist hier erklärt
https://debian-handbook.info/browse/de- ... ation.html

(nicht abschrecken lassen, meiner Meinung nach ist es im Endeffekt wesentlich einfacher als manuell mit make...)

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 27.11.2015 09:19:35

Hallo,
danke erstmal für die schnelle Antwort.
Ich habe das ganze jetzt nochmal probiert, auf die alte und auf die neue Art.
Klappt auch ohne Fehler.

Nur beim booten bekomme ich nach wie vor eine Kernel Panic. Er kann das /- Dateisystem nicht finden.

Ich verstehe aber nicht warum.

Der alte kernel liegt doch im selben Verzeichnis, und wird gefunden!
Hier ein Auzug aus meiner grub.cfg :

menuentry 'Debian GNU/Linux, mit Linux 4.2.6-falcot' --class debian --class gnu$
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root 6626cd05-07d8-4a23-a28e-2291923$
echo 'Linux 4.2.6-falcot wird geladen â¦'
linux /vmlinuz-4.2.6-falcot root=/dev/sda3 ro quiet

menuentry 'Debian GNU/Linux, mit Linux 3.2.0-4-amd64' --class debian --class gn$
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root 6626cd05-07d8-4a23-a28e-2291923$
echo 'Linux 3.2.0-4-amd64 wird geladen â¦'
linux /vmlinuz-3.2.0-4-amd64 root=UUID=1a0f4c4d-9792-4229-9b45-3b995a$
echo 'Initiale Ramdisk wird geladen â¦'
initrd /initrd.img-3.2.0-4-amd64


und meiner fstb:
/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).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda3 during installation
UUID=1a0f4c4d-9792-4229-9b45-3b995a53b9e9 / ext3 errors=remount-ro 0 1
# /boot was on /dev/sda1 during installation
UUID=6626cd05-07d8-4a23-a28e-2291923c197e /boot ext3 defaults 0 2
# /home was on /dev/sda5 during installation
UUID=b6493bac-8b35-4a25-9c0f-9d168ef8e476 /home ext4 defaults 0 2
# /opt was on /dev/sda6 during installation
UUID=2dddd25e-e6fd-4eaf-80b5-365716e07d60 /opt ext4 defaults 0 2
# /root was on /dev/sda7 during installation
UUID=d8e140e7-93d7-44b4-ade5-dc201a593995 /root ext4 defaults 0 2
# /tmp was on /dev/sda8 during installation
UUID=e65a4248-37e6-40f4-8211-a25923475ce2 /tmp ext4 defaults 0 2
# /usr was on /dev/sda9 during installation
UUID=625cfe89-ef5a-4591-8db7-747c77027b7d /usr ext4 defaultsor 0 2
# /var was on /dev/sda10 during installation
UUID=37113c70-9d6e-45e7-8abf-024feca00902 /var ext4 defaults 0 2
# /versuch1 was on /dev/sda11 during installation
UUID=bcedab37-93a4-4bbe-aaac-b6955b5b7b83 /versuch1 xfs defaults 0 2
# /versuch2 was on /dev/sda12 during installation
UUID=1d10482d-9e7e-4eb7-bb1b-d1ce6e047cb8 /versuch2 xfs defaults 0 2
# swap was on /dev/sda2 during installation
UUID=16e59d1a-5c91-40be-9d1e-b91e481e3908 none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0


Kann mir jemand erklären was ich was ich falsch mache.
Vielen Dank schon mal.

Benutzeravatar
towo
Beiträge: 4408
Registriert: 27.02.2007 19:49:44
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von towo » 27.11.2015 09:55:37

Und Du meinst, keine Initrd zu benötigen bei Deinem Kernel?

Ich hätte den kernel ja mit make deb-pkg gebaut, da fallen lustige Debian-Pakete bei raus welchen man sauber installieren kann, ohne am Paketmanagement vorbei zu agieren.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von smutbert » 27.11.2015 10:03:22

Der Kernel 4.2.6-falcot ist der selbst kompilierte nehme ich an?

Dann springt mir einmal, ganz abgesehen von der Kernelkonfiguration, von der ich überhaupt nichts weiß, ins Auge, dass du keine initrd lädst. Das heißt alle Treiber, die notwendig sind um auf das root-Dateisystem zuzugreifen, müssen direkt in den Kernel einkompiliert sein. Das umfasst den Dateisystemtreiber genauso, wie die Treiber für den Controller an dem die Festplatte oder SSD hängt. Bei den Debiankerneln sind die meisten dieser Treiber nur als Module gebaut, das heißt wenn du die Debiankonfiguration als Basis genommen hast (was vernünftig ist), dann musst du einiges ändern um ohne initrd starten zu können.
Andererseits wenn du den Kernel mit den richtigen Optionen baust (bei make-kpkg war zB »--initrd«) dann wird die initrd bei der Kernelinstallation automatisch erstellt und im Grubeintrag eingebunden. (Natürlich müssen immer noch zumindest die Treiber, die zum Lesen der initrd gebraucht werden direkt in den Kernel eingebaut werden und alle anderen notwendigen zumindest als Modul.)

Benutzeravatar
towo
Beiträge: 4408
Registriert: 27.02.2007 19:49:44
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von towo » 27.11.2015 10:06:11

Ich würde make-kpkg nicht mehr empfehlen, aus 2 Gründen:

1. he's dead Jim
2. das upstrem make Target deb-pkg tut seinen Job wesentlich besser, als es kernel-package zuletzt getan hat.

kernel-package legt schon gerne mal den Symlink Build nicht an.

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 27.11.2015 11:15:22

ja , der kombilierte Kernel ist Kernel 4.2.6-falcot

initRd hab ich tatsächlich abgewählt.
Unter "Device Driver" - "Generic Driver Options" habe ich "Maintaine a devtmpfs filesystem to mount at /dev" ausgewählt.

Das sollte doch genügen oder nicht ? ( Ist leider meine erste Kernelkompilierung )

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von smutbert » 27.11.2015 11:31:28

Nein, das genügt nicht. Das devtmpfs hat eigentlich überhaupt nichts mit der initrd zu tun. Es stellt im normalen Betrieb in Zusammenarbeit mit Debianudev die Gerätedateien unter /dev zur Verfügung.

Eine initrd ist entweder ein Image eines Dateisystems oder es ist ein (meist komprimiertes) cpio-Archiv, mit beidem muss der Kernel umgehen können. Unter Debian ist es üblicherweise ein cpio-Archive und dafür benötigt man »CONFIG_BLK_DEV_INITRD=y« und natürlich die Unterstützung für die entsprechende Kompression, zB für gzip »CONFIG_RD_GZIP=y« und vielleicht noch mehr, ich habe wie gesagt seit Ewigkeiten keinen Kernel mehr kompiliert.

Damit dass make deb-pkg hat towo natürlich nicht recht - habe ich in meiner ersten Antwort sogar geschrieben, aber ich habe es noch nie verwendet.

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 28.11.2015 10:23:48

Ok, danke das hat mich einen Schritt weitergebracht.

Ich habe mit: mkinitramfs -o initrd.img-4.2.6
ein neues initrd erzeugt.
Beim booten bekomme ich aber jetzt die Meldung:
Alert! dev/disk/by-uuid/1 ....... does not exist.

Diese uuid ist auch nicht meine /boot Partition!

Wie kann ich die einstellungen des initrd anpassen ?

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von smutbert » 28.11.2015 11:14:21

Für mich klingt die Meldung so als käme sie bereits von der initrd und wäre auf der Suche nach dem Gerät mit dem /-Dateisystem, das Dateisystem auf dem /boot liegt (wenn es ein eigenes ist) kann der dir und der initrd zu dem Zeitpukt noch völlig egal sein.
Wie hast du denn jetzt das /-Dateisystem im Bootmenüeintrag angegeben, wie zuvor mit root=/dev/sda3 oder mit root=UUID=... ?

und warum verwendest du direkt mkinitramfs? Einfacher sollte es doch mit update-initramfs gehen, also je nachdem ob schon einer initrd existiert mit

Code: Alles auswählen

# update-initramfs -u -k 4.2.6-falcot
# update-initramfs -c -k 4.2.6-falcot
dann muss man sich nicht um die Parameter von mkinitramfs kümmern.

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 30.11.2015 10:47:10

mit update-initramfs

bin ich zwar etwas weitergekommen, aber leider noch nicht zu einem funktioerendem Kernel.

Ich habe inzwischen nochmal alles von Anfang an neu gemacht. Bekomme aber beim booten folgende Meldung:
Bild

Ich habe alle benötigten Treiber im Kernel aktiviert. Wo liegt mein Denkfehler ?
Zuletzt geändert von hapkey am 30.11.2015 11:59:45, insgesamt 1-mal geändert.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von smutbert » 30.11.2015 10:55:02

Ich sehe nur ein Bild mit dem Text "Du bist nicht berechtigt das Bild zu sehen!"

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 30.11.2015 12:02:30

jetzt sollte das Bild zu sehen sein:

ich muss noch ergänzen, das ich auf einer virtuellen Maschine arbeite.
Kann es damit zusammenhängen ? Brauche ich hier ein spezielles Modul ?

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von smutbert » 30.11.2015 12:20:34

Mit der virtuellen Maschine hat das eher nichts zu tun. Wie sieht denn jetzt der Bootmenüeintrag in grub aus? Den hattest du zwar bereits im zweiten Post gepostet, aber zu der Zeit noch ohne initrd und außerdem mit root=/dev/sda3 statt root=UUID=…, was nicht so recht zur Fehlermeldung passen will.
(Du kannst ja noch mit dem Original-Debiankernel boot und den entsprechenden Abschnitt aus der /boot/grub/grub.cfg posten?)


(Ich vermute, dass entweder noch Dateisystem- oder Hardwaretreiber fehlen oder noch immer etwas mit der initrd nicht stimmt...)

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 30.11.2015 13:23:25

Wie gesagt, ich habe nochmal einen komplett neuen kernel (3.12.0) kompiliert.

Meine grub.cfg:

Code: Alles auswählen

menuentry 'Debian GNU/Linux, mit Linux 3.12.0' --class debian --class gnu-linux --class gnu --class os {
        load_video
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos1)'
        search --no-floppy --fs-uuid --set=root 6626cd05-07d8-4a23-a28e-2291923c197e
        echo    'Linux 3.12.0 wird geladen â¦'
        linux   /vmlinuz-3.12.0 root=UUID=1a0f4c4d-9792-4229-9b45-3b995a53b9e9 ro  quiet
        echo    'Initiale Ramdisk wird geladen â¦'
        initrd  /initrd.img-3.12.0
}

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von smutbert » 30.11.2015 13:59:11

Dann fehlen wohl noch ein paar Hardwaretreiber, bei mir werden unter Virtualbox ua die Kernelmodule libahci, ahci, libata, ata_generic, ata_piix geladen. Wenn du den Treiber des Controllers, bei mir ist das die Konfigurationsoption

Code: Alles auswählen

CONFIG_ATA_PIIX=m
aktivierst, wird vermutlich der Rest wegen den Abhängigkeiten sowieso auch gebaut. Für ext4 benötigst du

Code: Alles auswählen

CONFIG_EXT4_FS=m
und für die normale MBR/DOS-Partitinstabelle

Code: Alles auswählen

CONFIG_MSDOS_PARTITION=y

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 01.12.2015 08:36:38

Hallo,

inzwischen habe ich das System am laufen.
Wenn ich die die Standard .config aus dem /boot Verzeichniss zum kombilieren verwende funktioniert alles.
Nachteil, diese Datei beinhaltet einfach zu viel. Genau das wollte ich nicht.

Wie kann ich nur die Module einbinden die ich wiklich brauche ?
Auf meinem laufendem System kann ich die verwendeten Module mit lsmod sehen, aber wie binde ich nur die verwendeten in den neuen Kernel ein ?

Code: Alles auswählen

root@debian:~# lsmod
Module                  Size  Used by
nfsd                  192007  2
auth_rpcgss            39417  1 nfsd
oid_registry           12419  1 auth_rpcgss
nfs_acl                12511  1 nfsd
nfs                   149897  0
lockd                  55654  2 nfs,nfsd
fscache                42448  1 nfs
sunrpc                169648  6 nfs,nfsd,auth_rpcgss,lockd,nfs_acl
loop                   22869  0
coretemp               12854  0
crc32c_intel           21850  0
ghash_clmulni_intel    13062  0
aesni_intel            50895  0
aes_x86_64             16719  1 aesni_intel
psmouse                74742  0
ablk_helper            12572  1 aesni_intel
cryptd                 14560  3 ghash_clmulni_intel,aesni_intel,ablk_helper
lrw                    12871  1 aesni_intel
processor              28130  0
thermal_sys            23392  1 processor
vmwgfx                108863  0
ttm                    54136  1 vmwgfx
drm                   212914  2 ttm,vmwgfx
gf128mul               13047  1 lrw
glue_helper            12768  1 aesni_intel
i2c_piix4              12672  0
snd_pcm                68435  0
snd_page_alloc         13018  1 snd_pcm
snd_timer              22728  1 snd_pcm
snd                    52970  2 snd_timer,snd_pcm
soundcore              13026  1 snd
serio_raw              12936  0
pcspkr                 12595  0
i2c_core               24304  2 drm,i2c_piix4
shpchp                 31302  0
evdev                  17610  2
microcode              26065  0
ac                     12668  0
button                 12944  0
ext4                  395048  1
crc16                  12343  1 ext4
jbd2                   76523  1 ext4
mbcache                13130  1 ext4
sr_mod                 21988  0
sg                     26095  0
cdrom                  35173  1 sr_mod
ata_generic            12490  0
sd_mod                 40491  3
crc_t10dif             12431  1 sd_mod
crct10dif_common       12356  1 crc_t10dif
floppy                 53102  0
ata_piix               29671  0
vmxnet3                36555  0
vmw_pvscsi             17592  2
libata                141793  2 ata_generic,ata_piix
scsi_mod              162825  5 sg,libata,vmw_pvscsi,sd_mod,sr_mod

Benutzeravatar
towo
Beiträge: 4408
Registriert: 27.02.2007 19:49:44
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von towo » 01.12.2015 08:38:17

Auf meinem laufendem System kann ich die verwendeten Module mit lsmod sehen, aber wie binde ich nur die verwendeten in den neuen Kernel ein ?
make localmodconfig

hapkey
Beiträge: 9
Registriert: 07.11.2015 11:09:05

Re: Kernel Panic - not syncing mit neuem Kernel

Beitrag von hapkey » 01.12.2015 10:04:07

:hail:
Vielen Dank für die Hilfe!

so funktionierts!!

Antworten