
Plötsligt fryser din Linuxdator. Skärmen fylls med teknisk text och det sista du ser är ett meddelande i stil med:
“Kernel panic – not syncing: Attempted to kill init!”
För en ovan användare kan detta vara skrämmande, men i själva verket är en kernel panic Linuxkärnans sätt att skydda sig från att gå sönder på riktigt. I denna artikel går vi igenom vad en kernel panic är, hur man på ett säkert sätt kan framkalla en sådan för teständamål, och – viktigast av allt – hur man felsöker och återställer systemet efter en krasch.
Vad är en kernel panic?
En kernel panic uppstår när Linuxkärnan stöter på ett allvarligt fel som den inte kan hantera. Det kan röra sig om skadad minnesåtkomst, fel i en drivrutin eller att en viktig systemkomponent saknas. När det händer stoppar kärnan all aktivitet och ”panikar” – för att skydda systemet från dataförlust eller korruption.
Det är i praktiken samma sak som att dra i handbromsen när bilen börjar slira på is – allt stannar direkt.
Vanliga orsaker till kernel panic
Kernel panics kan uppstå av flera olika skäl. Här är några vanliga orsaker:
- Felaktig hårdvara: trasigt RAM, överhettning eller hårddiskfel.
- Drivrutiner som inte passar: särskilt tredjepartsmoduler som inte stämmer med kärnversionen.
- Saknade eller trasiga systemfiler: till exempel
/sbin/init
,initramfs
eller en felaktig/etc/fstab
. - Problem i GRUB: felaktiga UUID:er, saknade kernel-poster eller initrd-filer.
- Användarfel: att av misstag ta bort viktiga filer eller döda process ID 1.
Så här simulerar du en kernel panic (i testmiljö)
Varning: Testa aldrig detta på ett produktionssystem! Använd en virtuell maskin eller isolerad testmiljö.
Metod 1: Använd SysRq-trigger
Det finns en inbyggd mekanism i Linux som tillåter utvecklare att utlösa kernel panics manuellt för teständamål.
- Aktivera systemets sysrq-funktion:
echo 1 | sudo tee /proc/sys/kernel/sysrq
- Utlös en kernel panic:
echo c | sudo tee /proc/sysrq-trigger
Systemet fryser direkt, och kernel panic-meddelandet visas.
Metod 2: Ladda “crash”-modul
Vissa Linuxkärnor innehåller en modul som heter crash
. Om den finns:
sudo modprobe crash
Om modulen inte hittas kan du kontrollera dess tillgänglighet med:
modinfo crash
Så felsöker du en kernel panic
När du fått en kernel panic gäller det att lugnt och metodiskt reda ut vad som gått fel.
1. Starta om och kontrollera loggar
Systemet kommer att vara fruset. Starta om med hård omstart. Kontrollera sedan loggar:
journalctl -xb
eller:
dmesg | less
cat /var/log/kern.log | less
Sök efter nyckelord som panic
, BUG
, segfault
, VFS
, eller felaktiga moduler.
2. Boota i en tidigare kärnversion
Om problemet började efter en kärnuppdatering:
- Starta om och gå till GRUB-menyn.
- Välj Advanced options.
- Välj en tidigare kärna, t.ex.
5.15.x
istället för6.x
.
Vill du sätta en äldre kärna som standard:
sudo grub-set-default 1
3. Bygg om initramfs
En trasig initramfs (initialt ramfilsystem) kan stoppa hela bootkedjan.
Kör följande kommando:
sudo update-initramfs -u -k all
Eller bara för aktuell kärna:
sudo update-initramfs -c -k $(uname -r)
Starta om när det är klart:
sudo reboot
4. Reparera filsystem
Om kernel panic-meddelandet säger att root-filsystemet inte kan monteras – kör fsck
.
- Lista partitioner:
lsblk
- Kör filsystemskontroll:
sudo fsck /dev/sda1
Ersätt /dev/sda1
med rätt partition.
5. Kontrollera hårddisk och RAM
Felaktig hårdvara är en vanlig bov.
Använd smartctl
för att läsa ut diskinformation:
sudo smartctl -a /dev/sda
Håll utkik efter attribut som:
Reallocated_Sector_Ct
Current_Pending_Sector
Om värdena stiger: disken är på väg att ge upp – byt den snarast.
6. Reparera GRUB och fstab
Om bootloadern inte hittar rätt partition → panic.
- Starta från en live-USB.
- Montera rootpartitionen:
sudo mount /dev/sda1 /mnt
- Installera GRUB igen:
sudo grub-install --root-directory=/mnt /dev/sda sudo update-grub
- Kontrollera
/etc/fstab
och UUID:er:blkid
Förebygg kernel panics – så gör du rätt från början
- Undvik att röra kärnfiler om du inte vet vad du gör.
- Testa nya kärnor i en testmiljö innan du uppdaterar på skarpa system.
- Använd LTS-kärnor om du prioriterar stabilitet.
- Ha alltid minst två kärnor installerade.
- Aktivera kdump om du vill samla in kraschanalys.
Bonus: Automatisk omstart efter panic
För servrar är det ofta bättre att de startar om sig själva efter en krasch:
Lägg till i /etc/sysctl.conf
:
kernel.panic = 10
Ladda inställningen:
sudo sysctl -p
Sammanfattning
En kernel panic är ett allvarligt fel, men inte en katastrof – så länge du vet hur du ska felsöka. I de flesta fall går det att reda ut orsaken och få systemet på fötter igen med rätt verktyg och metodik.
Har du en testmiljö? Simulera en kernel panic själv – och öva på att reparera den. Det är ett av de bästa sätten att växa som Linuxanvändare.