GRUB image files

Från Wiki.linux.se
Version från den 6 september 2024 kl. 09.34 av Admin (diskussion | bidrag) (Skapade sidan med '== 11 GRUB bildfiler == GRUB består av flera olika bildfiler: en mängd startbilder för att starta GRUB på olika sätt, en kärnbild och en uppsättning moduler som kombineras med kärnbilden för att bilda en kärnbild. Här är en kort översikt över dessa. === boot.img === På PC BIOS-system är detta den första delen av GRUB som startar. Den skrivs till en master boot record (MBR) eller till en partitions bootsektor. Eftersom en PC-bootsektor är 512 byte är s...')
(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till navigering Hoppa till sök

11 GRUB bildfiler

GRUB består av flera olika bildfiler: en mängd startbilder för att starta GRUB på olika sätt, en kärnbild och en uppsättning moduler som kombineras med kärnbilden för att bilda en kärnbild. Här är en kort översikt över dessa.

boot.img

På PC BIOS-system är detta den första delen av GRUB som startar. Den skrivs till en master boot record (MBR) eller till en partitions bootsektor. Eftersom en PC-bootsektor är 512 byte är storleken på denna bild exakt 512 byte.

Den enda funktionen hos boot.img är att läsa den första sektorn av kärnbilden från en lokal disk och hoppa till den. På grund av storleksbegränsningen kan boot.img inte förstå någon filsystemstruktur, så grub-install hårdkodar platsen för den första sektorn av kärnbilden i boot.img vid installation av GRUB.

diskboot.img

Denna bild används som den första sektorn av kärnbilden när man startar från en hårddisk. Den läser in resten av kärnbilden i minnet och startar kärnan.

cdboot.img

Denna bild används som den första sektorn av kärnbilden vid start från en CD-ROM-enhet. Den utför en liknande funktion som diskboot.img.

pxeboot.img

Denna bild används som start för kärnbilden vid nätverksstart med PXE. Se Nätverk.

lnxboot.img

Denna bild kan placeras i början av kärnbilden för att få GRUB att se tillräckligt ut som en Linux-kärna så att den kan startas av LILO med en 'image='-sektion.

kernel.img

Denna bild innehåller GRUB:s grundläggande körfunktionaliteter: ramverk för enhets- och filhantering, miljövariabler, kommandoradsparsare för räddningsläge och så vidare. Den används sällan direkt, men är inbyggd i alla kärnbilder.

core.img

Detta är GRUB:s kärnbild. Den byggs dynamiskt från kärnbilden och en godtycklig lista av moduler av programmet grub-mkimage. Vanligtvis innehåller den tillräckligt med moduler för att nå /boot/grub och laddar allt annat (inklusive menyhantering, förmågan att ladda måloperativsystem och så vidare) från filsystemet vid körning.

*.mod

Allt annat i GRUB finns i dynamiskt laddbara moduler. Dessa laddas ofta automatiskt eller byggs in i kärnbilden om de är väsentliga, men kan också laddas manuellt med kommandot insmod (se insmod).

För GRUB Legacy-användare

GRUB 2 har en annorlunda design jämfört med GRUB Legacy, och därför kan korrespondenser med de bilder som användes inte vara exakta. Trots detta ställer GRUB Legacy-användare ofta frågor i termer de är bekanta med, och här är en kort guide till hur GRUB 2:s bilder relaterar till detta:

  • stage1: Stage 1 från GRUB Legacy var mycket likt boot.img i GRUB 2, och de tjänar samma funktion.
  • *_stage1_5: I GRUB Legacy inkluderade Stage 1.5 tillräckligt med filsystemskod för att den mycket större Stage 2 skulle kunna läsas från ett vanligt filsystem. I detta avseende var dess funktion liknande core.img i GRUB 2. core.img är dock mycket mer kapabel än Stage 1.5 var; eftersom den erbjuder ett räddningsskal är det ibland möjligt att återhämta sig manuellt om den inte kan ladda några andra moduler, till exempel om partitionsnummer har ändrats.
  • stage2: GRUB 2 har ingen enskild Stage 2-bild. Istället laddas moduler från /boot/grub vid körning.
  • stage2_eltorito: I GRUB 2 byggs bilder för att starta från CD-ROM-enheter nu med cdboot.img och core.img, och ser till att kärnbilden innehåller 'iso9660'-modulen. Det är vanligtvis bäst att använda programmet grub-mkrescue för detta.
  • pxegrub: I GRUB 2 byggs bilder för PXE-nätverksstart nu med pxeboot.img och core.img, och ser till att kärnbilden innehåller 'pxe' och 'pxecmd'-modulerna.