När Linux startar kan det ibland visas felmeddelanden på skärmen, och systemet kan stanna innan skrivbordet laddas. Även om sådana meddelanden kan verka allvarliga är de ofta den viktigaste ledtråden till den verkliga orsaken.
I den här artikeln går vi igenom de vanligaste orsakerna till startfel i Linux och vilka steg som kan användas för att lösa dem.
1. Starta inte om datorn om och om igen utan att kontrollera felet
När ett felmeddelande visas under uppstart börjar många användare starta om datorn flera gånger i rad. Om problemet däremot gäller filsystemet eller disken kan det göra situationen värre.
Det är bättre att först göra följande:
- skriv ner det exakta felmeddelandet
- ta en bild av skärmen
- lägg märke till vid vilket steg uppstarten stannar
- tänk igenom de senaste ändringarna i systemet
Om problemet började efter en uppdatering kan orsaken finnas i kärnan eller drivrutinerna. Om det däremot föregicks av ett strömavbrott är skada på filsystemet mer sannolik.
2. Vanliga typer av startfel
- GRUB- eller bootloaderfel
- filsystemfel
- problem med kernel eller initramfs
- misslyckade systemd-tjänster
- GPU-drivrutins- eller skärmproblem
- brist på diskutrymme
- fysiska diskfel
Även om det allmänna symtomet är detsamma, alltså att Linux inte startar, beror lösningen på vilken typ av fel det är.
3. Visa detaljerade uppstartsmeddelanden
Många distributioner döljer detaljerade startmeddelanden med quiet splash.
För att se den verkliga orsaken är det bra att tillfälligt ta bort detta alternativ i GRUB.
- Starta om datorn
- Tryck flera gånger på Shift eller Esc direkt efter att datorn slagits på
- Välj startposten i GRUB och tryck e
- Ta bort
quiet splash - Starta med Ctrl + X
Då blir det enklare att se exakt var i uppstarten felet uppstår.
4. Om “grub rescue” eller “no such partition” visas
Om grub rescue visas direkt när datorn startas, eller om du ser ett fel som “no such partition”, är problemet oftast kopplat till bootloadern eller partitionsstrukturen.
Vanliga orsaker:
- partitioner har ändrats eller flyttats
- Windows i en dual boot-konfiguration har skrivit över startinformationen
- EFI-partitionen eller /boot-partitionen är skadad
- GRUB-konfigurationen är trasig
I många fall kan du starta från en Live USB och installera om GRUB:
sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/boot/efi # endast för UEFI-system
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sda
update-grub
exit
sudo reboot
Byt ut enhetsnamnen så att de stämmer med ditt system.
5. Om systemet går in i emergency mode
Meddelandet You are in emergency mode betyder oftast att systemet hittade ett allvarligt problem när partitioner monterades eller viktiga inställningar lästes in.
En mycket vanlig orsak är fel i /etc/fstab.
Börja med att kontrollera loggarna:
journalctl -xb
Granska sedan fstab:
cat /etc/fstab
Typiska fel:
- felaktig UUID
- en monteringspunkt som inte finns
- en extern disk i fstab som inte är ansluten
Om du hittar ett fel, redigera filen:
nano /etc/fstab
Starta sedan om systemet.
6. Om felet är relaterat till fsck eller filsystemet
Meddelanden som fsck failed eller UNEXPECTED INCONSISTENCY tyder oftast på skador i filsystemet.
Detta händer ofta efter strömavbrott eller tvingad avstängning.
Det säkraste är att kontrollera detta från Recovery Mode eller Live USB:
sudo fsck -f /dev/sda1
Kör inte fsck direkt på en aktiv root-partition som redan är monterad.
Det är också klokt att kontrollera diskens hälsa:
sudo smartctl -a /dev/sda
Om SMART visar många fel bör viktiga data säkerhetskopieras först.
7. Om systemd-tjänster misslyckas
Ibland har Linux-kärnan redan startat, men en viktig tjänst startar inte, vilket gör att resten av systemet inte kan fortsätta. Då kan du se meddelanden som:
Failed to start ...Dependency failed for ...
Försök då att gå till TTY:
Ctrl + Alt + F2
Efter inloggning kan du kontrollera misslyckade tjänster:
systemctl --failed
journalctl -xb
För en specifik tjänst:
systemctl status NetworkManager
journalctl -u NetworkManager -b
Om den problematiska tjänsten inte är kritisk kan den tillfälligt stängas av för att testa om systemet därefter fortsätter att starta.
8. Om problemet ligger i kernel eller initramfs
Om felet började efter en kerneluppdatering kan den nya kärnan eller initramfs vara orsaken. I så fall kan du prova en äldre kärna från GRUB:
- Öppna GRUB
- Välj Advanced options
- Välj en äldre kernelversion
Om detta fungerar kan initramfs byggas om:
sudo update-initramfs -u
9. Om GPU-drivrutinen orsakar problemet
Ibland har Linux faktiskt startat, men den grafiska miljön visas inte på grund av ett problem med GPU-drivrutinen. Detta är särskilt vanligt efter NVIDIA-uppdateringar.
Prova att tillfälligt lägga till nomodeset i GRUB:
linux /boot/vmlinuz ... quiet splash nomodeset
Om systemet startar då tyder det starkt på ett grafikdrivrutinsproblem. Därefter kan drivrutinen installeras om.
10. Glöm inte att kontrollera ledigt diskutrymme
Ibland är den verkliga orsaken mycket enkel: root-partitionen eller /boot är helt full.
När det händer misslyckas uppdateringar och nästa uppstart kan gå sönder.
Kontrollera utrymmet med:
df -h
Om disken nästan är full, rensa cache och gamla paket:
sudo apt clean
sudo apt autoremove
Det kan också behövas att radera gamla kernels och stora loggfiler.
11. Om inget fungerar, säkerhetskopiera först
Om varken TTY, Recovery Mode eller vanliga reparationsmetoder hjälper är det säkrast att starta från en Live USB och först kopiera viktiga filer. Det är ännu viktigare om du misstänker fysisk diskfel.
Från en Live USB kan du:
- kopiera viktiga filer
- köra fsck
- installera om GRUB
- kontrollera konfigurationsfiler
- bedöma diskens tillstånd
Sammanfattning
Att Linux visar ett felmeddelande vid uppstart betyder inte nödvändigtvis att hela systemet måste installeras om. I många fall kan problemet lösas om felmeddelandet läses noggrant och orsaken undersöks steg för steg.
- anteckna det exakta felet
- visa detaljerade uppstartsmeddelanden
- använd TTY, Recovery Mode eller Live USB
- kontrollera GRUB, filsystemet, tjänster, kernel, drivrutiner och diskutrymme
- om du misstänker diskfel, rädda data först
Det viktigaste är att inte installera om systemet blint, utan att använda felmeddelandet som en ledtråd till den verkliga orsaken.