Hoe los je het probleem op dat Ubuntu, Mint of Kali vastloopt in de Initramfs-prompt in BusyBox?

Als Linux weigert correct op te starten en je tijdens initramfs in een busybox- prompt terechtkomt, is dat behoorlijk frustrerend. Vaak ligt de oorzaak in een probleem met het bestandssysteem, zoals een beschadigde superblock of een mismatch in schijf-UUID’s. Het is niet altijd even duidelijk; soms geeft het systeem cryptische berichten over “ONVERWACHTE INCONSISTENTIE” of zegt het gewoon dat /dev/sda1 niet bestaat. Dat komt omdat Linux het benodigde volume niet kan vinden, waarschijnlijk omdat fstab niet is uitgelijnd met de huidige UUID’s van je schijf of omdat een superblock beschadigd is geraakt. Het goede nieuws? Als je eenmaal de eerste schok te boven bent, is het probleem meestal op te lossen met een paar handmatige fsck-commando’s of door configuratie-instellingen aan te passen, waarna het systeem weer kan draaien. Het is niet altijd even eenvoudig en soms gebeuren er vreemde dingen, zoals fouten bij het mounten of het systeem dat in de noodmodus terechtkomt. Het begrijpen van de basisprincipes kan een hoop frustratie voorkomen.

Hoe los je problemen met het bestandssysteem of het opstarten van Linux op wanneer het vastloopt in BusyBox?

Controleer of het root-bestandssysteem een ​​handmatige fsck nodig heeft.

Dit is een veelvoorkomend probleem. Als je bericht zoiets zegt als /dev/sda1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY, dan is dat een teken dat er problemen zijn met het bestandssysteem. Meestal # fsck /dev/sda1 -ylost het uitvoeren van initramfs corruptie op, maar je moet eerst het volume ontkoppelen als het is aangekoppeld. Soms is het volume aangekoppeld, of laat het systeem je fsck niet rechtstreeks uitvoeren.

  • Start op in de busybox-shell en probeer vervolgens het rootvolume te ontkoppelen: # umount /dev/sda1. Als het is aangekoppeld, dan weet je waar je moet beginnen. Lukt het niet? Dan moet je mogelijk opstarten vanaf een externe live-USB of een hersteldisk en fsck vanaf daar uitvoeren.
  • Na het ontkoppelen voert u het commando uit # fsck /dev/sda1 -y. Dit commando scant en herstelt bestandssysteemfouten. U kunt enkele prompts verwachten om problemen op te lossen, maar met de optie -y worden reparaties automatisch bevestigd. In sommige gevallen is dit commando voldoende om uw systeem te herstellen.

Repareer handmatig een defect superblok.

Als fsck een foutmelding geeft over een beschadigd superblok, kun je dat ook repareren. Identificeer eerst de back-up superblokken met # sudo dumpe2fs /dev/vda2 | grep superblock. Zoek naar de locaties van de back-up superblokken, meestal rond blokken zoals 98304 of iets dergelijks.

  • Voer vervolgens een controle uit met een van die back-up superblocks, bijvoorbeeld: # sudo fsck -b 98304 /dev/vda2 -y.
  • Als fsck problemen meldt en erom vraagt, zeg dan zeker ja. Je zult zien dat het systeem de problemen oplost, en hopelijk is het volume daarna weer schoon.

Op sommige machines is het volume mogelijk nog steeds aangekoppeld, of weigert fsck te draaien. In dat geval moet u opstarten vanuit een live-omgeving en de reparaties daar uitvoeren. Want, zoals het hoort, maakt Linux het altijd ingewikkelder dan nodig.

Los problemen op met de UUID van het opstartvolume of met fstab-bestanden.

Als je dit ziet, ALERT! /dev/sda1 does not exist. Dropping to a shell.kan het zijn dat fstab naar het verkeerde apparaat verwijst op basis van de UUID’s. Om dit te verhelpen, start je op vanaf live media en voer je het commando uit # sudo blkidom de huidige schijf-UUID’s weer te geven. Controleer de UUID van je aangekoppelde partitie en vergelijk deze met de waarde in /etc/fstab.

  • Koppel je rootpartitie: # sudo mount /dev/sda2 /mnt.
  • Controleer /mnt/etc/fstaben corrigeer de UUID-regel indien deze onjuist is. Bijvoorbeeld:
    UUID=36cce3d5-cbdb-46f4-adbf-3f9aaa01d729 / ext4 errors=remount-rw 0 1
  • Sla het bestand op, ontkoppel het en herstart de computer. Als dat de oorzaak van het probleem was, zouden de foutmeldingen nu verdwenen moeten zijn.

Los hardware- of SATA-poortproblemen op via GRUB.

Als het BIOS of de hardware-instellingen van uw systeem problemen veroorzaken met de schijfdetectie (bijvoorbeeld door willekeurige SATA-poortnummers), kan het bewerken van de GRUB-opstartparameters helpen. Start op in de noodmodus of vanaf een Live-schijf en bewerk vervolgens /boot/grub/grub.cfg.

  • Zoek de lijn die er als volgt uitziet:Linux /boot/vmlinuz-4.15.0-70-generic root=/dev/sda1 rw quiet elevator=noop fsck.repair=yes
  • Vervang het pad naar het hoofdapparaat door de UUID ervan voor meer stabiliteit, bijvoorbeeld:
    Linux /boot/vmlinuz-4.15.0-70-generic root=UUID=36cce3d5-cbdb-46f4-adbf-3f9aaa01d729 ro quiet elevator=noop fsck.repair=yes

Dit voorkomt dat onjuiste apparaatnamen opstartproblemen veroorzaken, vooral als uw SATA-poorten op een vreemde manier opnieuw worden toegewezen. Wees wel voorzichtig als u de kernel of grub bijwerkt; soms worden deze configuraties teruggezet en moet u ze opnieuw instellen.

Al deze oplossingen werken niet gegarandeerd elke keer, maar ze hebben wel een paar systemen gered waar ik mee heb geëxperimenteerd. Het is wel een gedoe om door logbestanden en commando’s te spitten, maar het is in ieder geval beter dan elke keer Linux helemaal opnieuw te installeren.

Samenvatting

  • Controleer fsck handmatig als er tijdens het opstarten fouten in het bestandssysteem optreden.
  • Gebruik dumpe2fs om back-up-superblocks te vinden en deze indien nodig te herstellen.
  • Zorg ervoor dat de UUID’s in /etc/fstab overeenkomen blkidwanneer een UUID-mismatch opstartproblemen veroorzaakt.
  • Pas de GRUB-configuratiebestanden aan om rekening te houden met hardware-eigenaardigheden of SATA-herindelingen.

Samenvatting

Eerlijk gezegd kan het oplossen van opstartproblemen op Linux aanvoelen als een zinloze zoektocht, vooral met al die variabelen – beschadigde bestandssystemen, UUID-mismatches, hardwareproblemen. Maar als je eenmaal weet welke commando’s je moet uitvoeren en waar je moet zoeken, is het meestal op te lossen zonder een volledige herinstallatie. Het vergt alleen wat geduld en logisch probleemoplossend denken. Ik hoop dat dit iemand wat tijd en frustratie bespaart.