Mestring av Grub 2 på den enkle måten

Hvis du kjører Linux, er det en god sjanse for at den valgte distroen bruker Grub som standard bootloader. Maten har tjent godt i mange år, men begynner å vise sin alder. Som med all programvare tar det ikke lang tid før det nyeste og beste blir gammelt og bedervet. Funksjoner har hopet seg opp i Grub uten å tenke mye på å fornye hovedprogrammet. Dette førte til slutt til et rotete lappeteppe som ingen ønsket å beholde. I dette punktet, Grub2 var født. Det er en fullstendig omskrivning fra bunnen av ved hjelp av en fullstendig redesignet struktur. Denne nye Grub gir oss kraftige funksjoner som betingede utsagn (hvis/da osv), smarte oppdateringer og noe forbedret grafikk.

Får Grub2

For øyeblikket, hvis du vil bruke Grub2, er det beste alternativet å kjøre Ubuntu 9.10 (Karmic Koala). Hvis du bare vil leke og se hva den kan gjøre uten å risikere systemet ditt, vil jeg foreslå å kjøre det inne i en virtuell maskin som beskrevet her men selvfølgelig med Ubuntu 9.10.

menu.lst/grub.cfg

Hvis du har rotet med den originale Grub (nå kalt Grub legacy), vet du uten tvil alt om menu.lst. Det var filen der Grub-arven oppbevarte nesten alt. I Grub2 er den nærmeste ekvivalenten grub.cfg, også plassert i /boot/grub. En av de viktigste forskjellene er imidlertid at du bør ikke redigere grub.cfg-filen direkte. Noen av dere tenker kanskje «Ha! Slike advarsler er for n00bs! Vel, grunnen til denne regelen er ikke fordi utviklere ikke synes du er l33t nok, men fordi den filen er automatisk generert av Grub2 og vil bli overskrevet uten forvarsel som et resultat av ting som kjerneoppdateringer.

Hver gang update-grub-kommandoen kjøres, vil Grub2 lese de forskjellige konfigurasjonsfilene og bruke innholdet til å generere grub.cfg. Disse filene er omtalt individuelt nedenfor.

/etc/default/grub

Mange av Grub-alternativene som pleide å være i menu.lst er nå her. Dette inkluderer ting som om Grub-menyen skal vises eller ikke, og hvor lenge man skal vente før tidsavbrudd. Dette skjermbildet er standardkonfigurasjonen i Ubuntu 9.10, og er konfigurert til å skjule Grub-menyen, deaktivere "gjenopprettingsmodus"-alternativene og fortelle kjernen å inkludere en splash-skjerm.

For å tvinge Grub 2 til å vise menyen ved oppstart, holder du forresten nede Shift-tasten mens Grub starter.

/etc/grub.d/

Det er her ting virkelig begynner å skille seg fra Grubs arv. Der normalt alle oppstartsalternativer legges inn i menu.lst-filen, tar Grub 2 en helt annen tilnærming. /etc/grub.d/-katalogen inneholder individuelle filer, som hver representerer et alternativ for oppstartsmenyen. Nedenfor er filene i standardinstallasjonen.

Selv om det absolutt er veldig forskjellig fra eldre Grub, kan du legge merke til noe kjent i den mappen. Det er konfigurert på en veldig lik måte som standard Linux-oppstartssystemet, SysV Init. Hver av filene som vises er et shell-skript som kjøres i rekkefølge. Rekkefølgen bestemmes av tallene i begynnelsen av hvert filnavn, så skriptet i 00_header vil alltid kjøre før for eksempel 05_debian_theme.

/etc/grub.d/40_custom

Sjansene er store, hvis du trenger å redigere oppstartsmenyen, er dette filen du leter etter. Det er her du legger til dine egendefinerte oppføringer i menyen. Siden dette er den siste filen nummerert i grub.d-katalogen (som forklart i forrige seksjon), vil alle oppføringer du legger inn i denne filen vises nederst på oppstartsmenyen.

Som standard er 40_custom-filen nesten tom. I dette eksemplet har jeg lagt til en ny menyoppføring.

sprutbilder

Du kan enkelt laste ned Grub 2 splash pack på Ubuntu med:

sudo apt-get install grub2-splashimages

Når det er gjort, vil alle bilder lagres som TGA-filer i /usr/share/images/grub/.

Filen som spesifiserer hvilket splash-bilde som skal brukes ved oppstart, er 05_debian_theme-filen vi så tidligere. Så for å sette opp vår nye egendefinerte splash, ønsker vi å åpne /etc/grub.d/05_debian_theme som root i ditt valgte tekstredigeringsprogram. Se etter en linje som ligner på den som er uthevet i eksempelet nedenfor,

Og gi nytt navn til filen til det splash-bildet du foretrekker. Sørg for at banen peker til katalogen /usr/share/images/grub/. Noen eldre versjoner er standard til /usr/share/images/desktop-base/, og det er ikke det vi ønsker.

Anvendelse av endringer

Som du vil huske fra begynnelsen av denne veiledningen, genereres grub.cfg-filen automatisk fra de andre konfigurasjonsfilene vi har dekket. Når du har gjort endringer i disse filene, må du be Grub lese dem og sette sammen en ny konfigurasjonsfil. For å gjøre dette, kjør bare følgende kommando som root:

update-grub

Når du er ferdig, start datamaskinen (eller den virtuelle maskinen) på nytt for å se resultatene. Ikke glem å holde nede Shift mens du starter opp, hvis menyen fortsatt er skjult.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

Go up