Grub

grub2-mkconfig Opplæring

grub2-mkconfig Opplæring
Hvis du bruker Linux en god stund, og det er din daglige oppgave å installere og teste nye Linux-distribusjoner, har du kanskje til tider sett at alle de installerte operativsystemene ikke er oppført i GRUB-menyen. Det kan skyldes at GRUB ikke er riktig installert, eller at GRUB ikke kan skanne harddiskene riktig.

Hvis det noen gang skjedde med deg, må du ikke freak out! Det er veldig enkelt å løse. GRUB 2 bootloader har spesialverktøy for skanning av harddiskene som er installert på datamaskinen din etter oppstartbare operativsystemer som er installert på harddiskene.

I denne artikkelen vil jeg vise deg hvordan du løser problemene som er nevnt ovenfor og bruker grub2-mkconfig verktøy for å løse det.  Jeg vil bruke Debian 9 Stretch til demonstrasjonen, men det skal fungere på enhver moderne Linux-distribusjon med GRUB 2 installert. La oss komme i gang.

Hva grub2-mkconfig gjør:

grub2-mkconfig er et veldig enkelt verktøy. Alt det gjør er å skanne harddiskene på datamaskinen din etter installerte oppstartbare operativsystemer (inkludert Window, Mac OS og eventuelle Linux-distribusjoner) og generere en GRUB 2-konfigurasjonsfil. Det er det.

Forskjellen mellom grub2-mkconfig og grub-mkconfig:

Selv om GRUB 2 er installert på datamaskinen din, grub2-mkconfig kommandoen er kanskje ikke tilgjengelig i din favoritt Linux-distribusjon. Men grub-mkconfig kommandoen kan være tilgjengelig i din Linux-distribusjon. Det er ingen forskjell mellom grub-mkconfig og grub2-mkconfig hvis GRUB 2 er installert.

Merk at hvis du har GRUB-arv installert, da grub-mkconfig og grub2-mkconfig kommandoer vil ikke være de samme.

Du kan sjekke hvilken versjon av GRUB som er installert på Linux-maskinen din med følgende kommando:

$ sudo grub2-mkconfig --versjon
Eller
$ sudo grub-mkconfig --versjon

Som du kan se, på min Debian 9 Stretch-maskin, GRUB 2.02 er installert. Det har jeg heller ikke grub2-mkconfig kommando tilgjengelig på Debian 9 Stretch. Det blir omdøpt til grub-mkconfig. Så grub-mkconfig og grub2-mkconfig er det samme i mitt tilfelle.

Ved hjelp av grub2-mkconfig:

De grub2-mkconfig eller grub-mkconfig kommandoen har bare ett viktig alternativ. De -o eller langformat -produksjon alternativ. Den brukes til å fortelle GRUB 2 hvor den genererte GRUB-konfigurasjonsfilen skal lagres.

Som standard, grub2-mkconfig eller grub-mkconfig kommandoen skriver ut den genererte konfigurasjonsfilen til STDOUT, som er terminalen til Linux-operativsystemet.

Hvis dette er hva du vil, så løp grub2-mkconfig eller grub-mkconfig kommandoen som følger:

$ sudo grub2-mkconfig
Eller
$ sudo grub-mkconfig

Som du kan se, blir den genererte GRUB 2-konfigurasjonen skrevet ut på terminalskjermen. Dette er kanskje ikke veldig nyttig.

Hvis du vil, kan du eksportere den genererte GRUB 2-konfigurasjonen til en fil. Formatet på kommandoen er gitt nedenfor:

$ sudo grub2-mkconfig -o FILE_PATH
Eller
$ sudo grub-mkconfig -o FILE_PATH

Hvis du foretrekker det lange formatet, da

$ sudo grub2-mkconfig - utgang FILE_PATH
Eller
$ sudo grub-mkconfig - utgang FILE_PATH

MERK: Her, FILE_PATH er banen til filen der du vil at den genererte GRUB 2-konfigurasjonen skal lagres.

La oss si at du vil lagre den genererte GRUB 2-konfigurasjonen i en fil grub.cfg i brukerens HJEM katalog.

For å gjøre det, kjør følgende kommando:

$ sudo grub2-mkconfig -o ~ / grub.cfg
Eller
$ sudo grub-mkconfig -o ~ / grub.cfg

Som du ser, genereres en ny GRUB 2-konfigurasjonsfil.

Som du kan se, grub.cfg filen blir generert på brukerens HJEM katalog.

Som du kan se, innholdet i den genererte grub.cfg filen er den samme som tidligere da jeg skrev ut utgangen i terminalen.

Oppdaterer GRUB 2-konfigurasjonsfil (BIOS):

Hvis du bruker gamle BIOS-baserte hovedkort, bør konfigurasjonsfilen til GRUB 2 bootloader være i / støvel / grub / grub.cfg filen som du kan se på skjermbildet nedenfor.

MERK: På noen Linux-distribusjoner som CentOS 7 eller RHEL 7, kan du finne GRUB 2-konfigurasjonsfilen på / støvel / grub2 / grub.cfg. Hvis det er tilfelle for deg, må du sørge for å justere banen før du kjører grub2-mkconfig eller grub-mkconfig kommandoen i artikkelen nedenfor.

For å oppdatere GRUB 2-konfigurasjonsfilen på BIOS-basert Linux-installasjon, kjør følgende kommando:

$ sudo grub2-mkconfig -o / boot / grub / grub.cfg
Eller
$ sudo grub-mkconfig -o / boot / grub / grub.cfg

GRUB 2-konfigurasjonsfilen bør oppdateres.

Hvis du forventer noen endringer, start datamaskinen på nytt med følgende kommando:

$ sudo omstart

Du bør se hva du forventer i GRUB-menyen like etter at du har trykket på av / på-knappen.

Oppdaterer GRUB 2-konfigurasjonsfil (UEFI):

På UEFI-baserte hovedkort er det litt vanskeligere å oppdatere GRUB 2-konfigurasjonen.

På EFI-baserte Linux-installasjoner er GRUB 2-konfigurasjonsfilen i / boot / efi / EFI /<DINE_OS>/ grub.cfg

Her, er navnet på katalogen der grub.cfg ligger. Katalognavnet vil være forskjellig for hver Linux-distribusjon. Trikset er å bestemme navnet på katalogen som brukes ved oppstart. Hvis du ikke har spilt rundt med annen Linux-distribusjon, er sjansen større for at det bare vil være en katalog. Ellers vil det være mange kataloger som du må bestemme den aktive fra.

Kjør følgende kommando for å liste alle tilgjengelige kataloger i / boot / efi / EFI katalog:

$ sudo ls / boot / efi / EFI

Som du kan se, på min CentOS 7-maskin, har jeg bare en katalog centos /

For å oppdatere GRUB 2-konfigurasjonsfilen, kjør følgende kommando:

$ sudo grub2-mkconfig -o / boot / efi / EFI / centos / grub.cfg
Eller
$ sudo grub-mkconfig -o / boot / efi / EFI / centos / grub.cfg

GRUB 2-konfigurasjonsfilen bør oppdateres.

Start datamaskinen på nytt, og du bør se dine forventede oppføringer i GRUB-menyen.

Annen bruk av grub2-mkconfig og grub-mkconfig:

Anta at du oppdaterte kjernen til din favoritt Linux-distribusjon. Etter installasjonen sjekket du versjonen av kjernen din, og du er overrasket over at den ikke ble oppdatert! å nei!

Ikke bli lei deg. De grub2-mkconfig eller grub-mkconfig kommandoen kan også skanne /støvel katalog for å se etter installerte Linux-kjerner og generere en GRUB 2-oppstartsoppføring for hver av dem.

Kommandoene og prosessene er de samme som gitt i Oppdatering av GRUB 2-konfigurasjonsfil (BIOS) og Oppdatering av GRUB 2-konfigurasjonsfil (UEFI) delene av denne artikkelen ovenfor.

Så det er slik du bruker grub2-mkconfig eller grub-mkconfig kommando for å løse mange oppstartsproblemer på Linux. Takk for at du leser denne artikkelen.

Beste spillkonsollemulatorer for Linux
Denne artikkelen vil liste opp populære programvare for spillkonsollemulering tilgjengelig for Linux. Emulation er et programvarekompatibilitetslag so...
Beste Linux Distros for spill i 2021
Linux-operativsystemet har kommet langt fra det originale, enkle, serverbaserte utseendet. Dette operativsystemet har forbedret seg enormt de siste år...
Hvordan fange opp og streame spilløkten din på Linux
Tidligere ble spill bare ansett som en hobby, men med tiden så spillindustrien en enorm vekst når det gjelder teknologi og antall spillere. Spillpubli...