Sådan bruges GRUB Rescue
Billedkredit: agrobacter/E+/GettyImages
For Windows- og Mac-brugere er opstart en ret simpel ting. Du tænder for din computer, den indlæser Windows eller OSX, og du går i gang med at gøre, hvad du gør. Det er klart, at der foregår ting under motorhjelmen, men du behøver normalt ikke at vide, hvad de er. Det er ikke tilfældet for Linux-brugere, som ofte installerer deres OS sammen med Windows eller OSX, eller måske endda har flere Linux-operativsystemer på deres computer. Linux bruger en bootloader hedder GRUB at administrere og starte disse operativsystemer, og GRUB redning at løse problemer, når de opstår.
Så hvad er en bootloader helt præcist?
Din computer gennemgår en række trin, når du tænder den. Den første ting, den gør, er at køre et par stykker kode indbygget i chips på computeren, der kontrollerer, at alle de relevante stykker hardware er til stede og i god stand. Derefter tjekker den computerens drev, normalt begyndende med hovedharddisken, for at lede efter et lille stykke software kaldet en bootloader. Bootloaderens opgave er at holde styr på, hvor dit operativsystem er installeret, og at få det op at køre for dig.
Dagens video
Enkeltstøvle vs. Multiboot Bootloaders
Både Windows og OSX har bootloadere, men de har et simpelt liv, fordi de hver typisk kun indlæser ét operativsystem. Linux bootloaderen skal holde styr på flere operativsystemer og være i stand til at indlæse det, som brugeren vælger på et givet tidspunkt, så det beskrives nogle gange som en multibootbootloader. Det er faktisk der, navnet kommer fra: Det er et akronym for GRog Unificeret Bootloader. Efter du har foretaget dit valg fra opstartsmenuen, indlæser GRUB kernen – kernedelen af operativsystemet – for hvilket operativsystem du end har valgt.
For det meste virker det, men ikke altid
Normalt starter computeren sin opstart og holder derefter pause et øjeblik med GRUB-menuen på skærmen. Hvis du ikke gør noget, starter din computer op i det operativsystem – normalt Linux – du har valgt som standard. Alternativt kan du vælge mellem et hvilket som helst andet operativsystem i menuen eller vende tilbage til en ældre version af dit primære OS, hvis det er nødvendigt. Af og til indlæses din menu og dit operativsystem dog ikke korrekt, og du bliver smidt ud til GRUB redning kommandoprompt. Du kan også vælge denne mulighed fra GRUB-menuen, hvis du har mistanke om, at dit system har problemer og vil prøve at rette dem.
GRUB-kommandolinjen
GRUB-kommandolinjen ligner meget den kommandolinjegrænseflade, du ville se, hvis du åbnede et terminalvindue på Linux, eller for den sags skyld, hvis du kørte kommando kommando fra Kør-boksen i din Windows-menu. Det er i bund og grund en afisoleret version af den fulde Linux-kommandolinjegrænseflade. Du har ikke det fulde sæt af Linux-værktøjer og -programmer til din rådighed, men du har masser af muligheder for at løse nogle af de almindelige problemer, du kan støde på med dit system.
En hurtig afklaring om GRUB-versioner
Hvis du har GRUB-problemer, og du gennemsøger internettet på jagt efter løsninger, er det vigtigt at være opmærksom på datoen for den rådgivning, du finder. Den originale version af GRUB har ikke oplevet nogen udvikling i over et årti og er for det meste blevet erstattet af en nyere version. Ældre websteder henviser til de to versioner som GRUB og GRUB2, mens nyere websteder nu refererer til GRUB2 blot som GRUB, mens den originale version er det arv GRUB. Råd beregnet til ældre GRUB fungerer ofte ikke på et nuværende system og kan forårsage skade. Denne artikel antager, at du bruger GRUB2 på Ubuntu 18.04 LTS, selvom oplysningerne bør gælde for enhver nuværende version af Linux.
Den prioriterede GRUB-redningsreparation
Hver af de dusinvis af kommandoer, der er tilgængelige for dig i GRUB-redning, er kompliceret og har brug for en egen artikellængde diskussion. Det er lidt meget for en hurtig læsning, så lad os fokusere på dets vigtigste brug: At få dit system op at køre og rette det, der gik galt i GRUB.
Hvad dine drev hedder
GRUB og selve Linux OS bruger forskellig terminologi til dine harddiske. Ubuntu og andre versioner af Linux henviser til den første harddisk i dit system som sda, den anden som sdb og så videre. I GRUB-redning refererer GRUB til den første fysiske harddisk som hd0, den anden som hd1 og så videre. Det bliver vigtigt på et øjeblik.
GRUB manuel opstart
Følg disse trin for at genstarte din computer med GRUB rescue, hvis bootloaderen går i stykker, og Ubuntu – eller dit andet valgfrie operativsystem – ikke indlæses. Der er masser af andre ting, du kan rette, når din computer kører, men du skal først få din computer til at fungere, før du kan gøre dem.
- Indtast kommandoen ls for at finde ud af, hvilke partitioner din harddisk indeholder. Det vil først vise din faktiske harddisk som (hd0) eller noget lignende, efterfulgt af en række relaterede numre – (hd0, gpt1), (hd0, gpt2) og så videre – som repræsenterer partitionerne på din harddisk køre. Hvis du har flere operativsystemer, kan der være mange af dem.
- Identificer systemet Ubuntu starter fra ved at skrive ls igen, men angiver en partition. Du behøver ikke at inkludere præfikset for partitionen, kun nummeret, så en typisk kommando kan se ud ls (hd0, 3) hvis du havde tjekket de to første partitioner og nu kiggede på den tredje. Bliv ved, indtil du finder en, der indeholder de afslørende Linux-mapper, såsom bin/, boot/, dev/, etc/ og usr/. Det er den du skal starte fra.
- Nu hvor du ved, hvor opstartsfilerne er, skal du fortælle GRUB om hemmeligheden. Hvis den korrekte partition var (hd0, 3), som i eksemplet ovenfor, ville du skrive sætroot=(hd0, 3) på GRUB-kommandolinjen, og klik derefter Gå ind.
- De filer, du skal bruge for at starte computeren, er i boot/-mappen på den partition, så begynd at skrive linux /boot/vmlinuz ved kommandoprompten. Det vil automatisk udfylde den korrekte version af vmlinuz-filen for dig med et langt nummer, der identificerer Linux-kerneversionen. Vælg Tab nøglen til at acceptere det. Før du trykker Gå ind, tilføj root-kommandoen igen, men denne gang i stedet for at sige root=(hd0, 3) – som er GRUBs terminologi for den tredje partition på den første harddisk – skriver du root=/dev/sda3, hvilket, du vil huske, er hvordan Linux selv identificerer den samme partition.
- Type initrd på GRUB-kommandolinjen, og klik igen på Tab tasten for at acceptere dets forslag – den skal matche kernenummeret fra den forrige kommando – og derefter Gå ind.
- Type støvle ved prompten for at starte dit system.
Hvis din prompt siger Grub Rescue>
Normalt bør din kommandolinjeprompt på dette stadium læses grub>, men hvis dit system er virkelig rodet, kan det sige grub redning> i stedet. Det betyder, at du bruger en bare-bones-version af GRUB-redningsskallen, og du vil ikke være i stand til at bruge Tab-tasten til at fuldføre dine kommandoer. I stedet skal du finde de lange versionsnumre manuelt og skrive dem ned. Forudsat at de er på den samme partition, gør du det sådan her:
- Type ls (hd0, 3) /boot og se på informationen på skærmen. De to filer, du leder efter, er den, der starter med vmlinuz og den der starter med initrd. Skriv dem ned, eller tag et billede af skærmen med din telefons kamera, så du omhyggeligt kan henvise til det, tal for tal.
- Skriv nu sæt root=(hd0, 3) og tryk Gå ind. På dette tidspunkt skal du manuelt indlæse to moduler, der ville være blevet indlæst for dig, hvis du fik grub>-prompten. Disse bruger insmod kommando, forkortelse for "installer modul."
- Type insmod normal og tryk Gå ind. Skriv nu normal for at køre det modul, du lige har installeret. Skriv endelig insmod linux og tryk Gå ind, så du kan gå videre for at specificere opstartsfilerne.
- Skriv det samme linux kommando, men denne gang udfylder du den manuelt fra start til slut. For et Ubuntu 18.04-system på den samme partition, som vi har brugt som vores eksempel hele vejen igennem, kan det læses linux /boot/vmlinuz-4.15.0-44-generisk og følg den igen med root=/dev/sda3 før du trykker Gå ind.
- Gør det samme med initrd kommando, også ved at bruge hele det tal, du har skrevet ned. I eksemplet ville det se ud initrd.img-4.15.0-44-generisk.
- Type støvle og tryk Gå ind for at starte dit system.
Geninstallerer GRUB efter du har startet
Din computer bør starte normalt op på dette tidspunkt, og du bør være i stand til at logge på, som du plejer. Dette er dog ikke en proces, du vil bruge hver dag, så førsteprioritet er at rette GRUB ordentligt. Klik på Ansøgninger ikonet nederst på din Dash og skriv Terminal ind i søgefeltet. Når dit terminalvindue er åbent, skriv update-grub og tryk Gå ind. Der vil ske flere ting, og så får du en besked, der siger Færdig og vende tilbage til GRUB-kommandolinjen. Type grub-installer /dev/sda, forudsat at din partition var på det første fysiske drev. GRUB er nu geninstalleret, og din computer skulle starte normalt, når du genstarter.
Hvis du er intimideret på dette tidspunkt
Linux-fællesskabet har generelt altid haft en sund DIY-attitude, men hvis du er ny i Linux-verdenen eller bare ønsker at få din computer op at køre igen med et minimum af besvær, kan du finde disse manuelle reparationer besværlige. Der er automatiserede værktøjer, du kan bruge i stedet, som ikke behøver, at du får dine hænder beskidte ved at lege med den faktiske funktion af GRUB og Linux. Støvle-reparation er et eksempel.
Bruger Boot-Repair i stedet
For at bruge boot-repair skal du bruge det dvd- eller USB-drev, du brugte til at installere Ubuntu. Hvis du ikke har det, så lån en fungerende computer længe nok til at downloade og brænde en ny kopi. Når du har det, skal du sætte OS i diskdrevet eller USB-porten efter behov og genstarte din computer. Du skal muligvis åbne opstartsmenuskærmen ved at trykke på Esc eller F2 mens din computer starter, og bed den om at tjekke dvd-drevet eller USB-drevet, før du prøver at starte fra harddisken. Når det er gjort, skal du vælge Prøv Ubuntu fra diskens opstartsmenu.
Download og installation af Boot-Repair
Disken eller USB'en fører dig til et langsomt, men fuldt funktionelt Ubuntu-skrivebord, hvor du kan gøre alle de ting, du normalt gør med din computer. Boot-repair-programmet vedligeholdes som et personligt pakkearkiv (PPA), så det første du skal gøre er at tilføje den passende PPA som en softwarekilde til din computer.
- Åbn et terminalvindue og skriv sudo add-apt-repository ppa: yannubuntu/boot-repair.
- Skriv derefter sudo apt opdatering.
- Skriv endelig sudo apt installer boot-repair for at installere programmet.
Kører Boot-Repair
For at køre selve boot-repair-værktøjet skal du skrive støvle-reparation i samme terminalvindue. Boot-repair vil scanne dit system for GRUB- og boot-relaterede problemer og derefter pop op en dialogboks. Fra boksen kan du vælge at rode rundt med manuelle indstillinger eller vælge Anbefalet reparation at få boot-repair til at ordne de mest almindelige problemer for dig automatisk. Når det er færdigt, vil det normalt fortælle dig, at reparationer er blevet gennemført, og give dig et link, du kan klikke på for at læse en logfil, der forklarer alt, hvad der er blevet gjort. For at afslutte skal du genstarte din computer, fjerne boot-disken, når du bliver bedt om det, og derefter vente, mens den starter normalt.