GRUB installeren Hoe GRUB te configureren en installeren?

Inhoudsopgave:

Anonim

Overzicht van Install GRUB

GRUB staat voor Grand Unified Bootloader. Als u meerdere kernelafbeeldingen op uw systeem hebt geïnstalleerd, kunt u kiezen welke u wilt uitvoeren. GRUB toont een splash display-scherm, wacht een paar seconden, tenzij je iets invoert; het laadt de standaard kernelafbeelding zoals gegeven in het grub-configuratiebestand. In dit onderwerp gaan we meer te weten komen over GRUB installeren.

Hoe GRUB te configureren en installeren?

Grub-configuratiebestand is /boot/grub/grub.conf

Het bevat kernel en initrd afbeelding.

Standaard bootloader voor RHEL6 (Red Hat Enterprise Linux 6) op x86- en x64-systemen

Stel de GRUB-bestanden in in / boot / grub en plaats in de boottrack:

Dus als we hier op een opdrachtregel springen en we inloggen in de / boot / grub / map en grep 1_5

We zien een aantal bestandssysteemspecifieke opstartladers van fase 1.5. Dus eentje voor ext, eentje voor reiser eentje voor xfs en meer. En interessant genoeg heeft GRUB toegang tot ext2, ext3 en ext4 bestandssysteem allemaal met hetzelfde stuurprogramma.

GRUB boot loader configuratie wordt gemaakt door het /boot/grub/grub.conf bestand te bewerken. Het wordt het bootgrub-menu op de opdrachtregel genoemd, zie onderstaande opdracht.

Dus laten we gaan kijken hoe het bestand eruit ziet.

Het is een vrij klein configuratiebestand. Laten we het opsplitsen in zijn hoofdcomponent

Hier bovenaan hebben we een soort algemene instellingen,

En dan hieronder onderaan, hebben we de besturingssysteemspecifieke instellingen. In ons voorbeeld hebben we nu instellingen voor twee besturingssystemen, Windows 8 en RHEL 6.

Maar laten we eerst eens kijken naar de wereldwijde omgeving. Standaard = 0 hier. Nou, dit vertelt ons dat, tenzij we het opstartproces onderbreken en GRUB anders vertellen, het de eerste besturingssysteemoptie opstart die we hieronder hebben gespecificeerd, dus voor ons is dat RHEL 6 Timeout = 10 vertelt GRUB ons 10 seconden te geven waarin we kan op een toets drukken om het opstartproces te onderbreken.

Plonsafbeelding, nou dat zet gewoon een aangepaste splashafbeelding achter het opstartmenu, niet normaal zo belangrijk anders dan misschien voor branding.

Dan verbergt de verborgen menu-optie hier het menu van OS (Besturingssysteem) keuzes tenzij we een toets raken. Eigenlijk,

Laten we eens kijken hoe het vroege opstartproces eruit ziet met en zonder deze verborgen menu-optie. Dus we zullen er eerst naar kijken zonder het verborgen menu.

Oké, kijk hier hoe we het menu met de verschillende keuzes van het besturingssysteem kunnen zien.

En onderaan hier hebben we een timer die ons vertelt hoe lang we nog hebben totdat het opstarten doorgaat.

Multi-booten kan een beetje ingewikkeld zijn, dus verborgen menu's laten ons dat menu verbergen, en in plaats daarvan is alles wat we krijgen dit.

Oké, als we een toets indrukken, keren we terug naar het opstartmenu dat we net hebben gezien.

Als we niet op een toets drukken, wordt het systeem alleen opgestart, en vaker wel dan niet, om eerlijk te zijn, wordt meestal de verborgen menu-optie opgegeven. Dat zijn de belangrijkste globale instellingen. We kunnen er nog een paar toevoegen als we nodig hebben, zoals fallback-opties voor het geval de standaardoptie mislukt,

Laten we nu eens kijken naar de bedrijfsspecifieke instelling. Dus, terug naar ons GRUB-configuratiebestand, en we hebben twee besturingssystemen gedefinieerd, RHEL 6 en Windows 8.

Voor elk besturingssysteem hebben we minimaal drie regels nodig, titel, root en kernel, en voor Linux hebben we een andere regel nodig, initrd.

De titel is dus willekeurig. Je kunt hier vrijwel alles zetten wat je maar wilt. We deden dat met de Windows 8-optie. GRUB heeft het besturingssysteem niet herkend. Plaats gewoon anderen, dus we hebben het handmatig gewijzigd in Windows 8.

Vervolgens ontwortelen. Hiermee kunnen we de root-directory voor GRUB specificeren.

Nu is de manier waarop GRUB schijfstations en partities aanpakt standaard anders dan de manier waarop de kernel dat doet,

Voor onze RHEL-installatie hebben we hd0, 2. Nou, allereerst hebben we haakjes nodig. Dan voegen we de HD toe, wat staat voor harde schijf.

Nu maakt het GRUB niet uit of het een SCSI-drive (Small Computer System Interface) is. Een ID of een ATA-schijf. Het kan me echt niets schelen. Wat GRUB betreft, het zijn allemaal harde schijven, dus GRUB noemt ze gewoon allemaal iets HD.

Het eerste nummer hier is het apparaatnummer volgens het BIOS, dus 0 is het eerste schijfapparaat op het systeem. En vergeet niet dat GRUB een goed computersysteem is. Het begint te tellen op 0, niet op 1. Dan hebben we een komma nodig en dan geven we het het partitienummer.

Opnieuw is 0 de eerste partitie. Het is echt belangrijk wanneer een werkmap met de MBR.

We zouden hd0 gebruiken om de MBR op het eerste apparaat te adresseren, hd1 om de MBR of het volume-opstartrecord op het tweede apparaat te adresseren. Dus we hebben hier de derde partitie op de eerste harde schijf van het systeem,

Dus station 0, partitie 2.

Als de kernel dit apparaat zou aanspreken, zou het sda3 gebruiken. En net als de kernel kan GRUB ook een apparaat aanspreken zonder partities te dragen, dus het equivalent van devsda in het geval zou natuurlijk hd0 tussen haakjes zijn.

Vervolgens de kernelregel. Hier specificeren we de locatie van de kernel plus eventuele opstartparameters die we eraan willen doorgeven, en we zullen hier een beetje tijd doorbrengen.

Dus in de eerste plaats wordt de locatie van de kernel gespecificeerd op basis van de locatie in een bestandssysteem. Vergeet niet dat tegen de tijd dat we naar grub.conf zijn, we met de opstartlader van fase 2 werken, die alles weet over bestandssystemen, dus we hoeven niets als blocklist-notatie te gebruiken.

We kunnen het eenvoudig een standaard UNIX-bestandssysteempad geven.

Vervolgens wordt de kernelafbeelding vmlinuz ons de versie van de kernel en de architectuur genoemd, dus voor ons een versie van de 2.6.32-kernel. Ja, het is oud, maar het is oerdegelijk en het is voor x86 / x64-architecturen.

Het VM-gedeelte is een verwijzing naar de tijd dat ondersteuning voor virtueel geheugen belangrijk was, en slamend aan de voorkant vertelde iedereen dat het systeem virtueel geheugen ondersteunde, en dan vertelt de z of de zed aan het einde ons dat de kernelafbeelding een gecomprimeerd beeld, waardoor het klein blijft.

Dus hoewel de kernel zelf een programma is en met enige assemblage in C is geschreven, wordt deze op ons systeem opgeslagen als een gecomprimeerde afbeelding genaamd vmlinuz.

Nu hebben we het rootbestandssysteem hier op ons logische volume, en het is gespecificeerd als alleen-lezen.

Nu, later in het opstartproces, wordt het opnieuw gekoppeld als lezen / schrijven.

Versleutelingspartitie van rd _NO_LUKS

Voor Linux-besturingssystemen hebben we hier een regel die begint met het initrd-commando.

Dus een paar dingen over initrd.

Eerst komt het voor de initiële RAM-schijf, en wat het is een schijfimage die is geladen met stuurprogramma's en modules en dergelijke die de kernel nodig heeft om het opstartproces te laten tikken.

Onthoud dat de kernel klein is en geen stuurprogramma's bevat voor elk soort schijfstation ter wereld. Dus wordt dit initrd-bestand in het geheugen geladen als een tijdelijk rootbestandssysteem, vandaar de naam RAM-schijf, en vervolgens gebruikt de kernel het voor toegang tot en laden van modules die nodig zijn om andere dingen in het opstartproces te doen.

Het tweede dat goed is aan initrd is dat initrd een soort oudere term is omdat het tegenwoordig, althans sinds de 2.6 kernels, een initramfs-afbeelding is.

De initramfs is een verbeterde vorm van initrd, dus initrd was geblokkeerd apparaatimage geladen in geheugen, maar het wordt benaderd als een blokapparaat, gegevens die werden gelezen of geschreven werden gecached door Linux.

Dus we zouden initrd in het geheugen laden.

De initramfs zijn anders, het is beter. Op een hoog niveau.

Het is gewoon die cache aan het monteren, dus geen duplicatie.

We hebben initramfs gekregen die overeenkomen met onze kernelversie en architectuur, en dat is hoe GRUB is geconfigureerd om Linux op te starten.

Nu hebben we meerdere versies van Linux op onze machine RHEL, Fedora, Mint noem maar op.

Deze worden hier ook op dezelfde manier vermeld. En GRUB kan de Linux-kernel rechtstreeks laden, we noemen dit type opstarten direct opstarten of Direct laden.

GRUB kan de Windows-kernel niet rechtstreeks laden, dus het laadt Windows via een mechanisme genaamd Chain Loading

+1 optie is hier beneden wat gebeurt er dan is GRUB start het opstartproces maar geeft uiteindelijk de controle over aan de Windows bootloader is geïnstalleerd op de eerste partitie van de eerste harde schijf zoals hier aangegeven door (hd0, 0)

Nu geeft dit ook aan dat Windows vóór Linux was geïnstalleerd.

Deze rootnoverify-optie vertelt GRUB hier om de partitie niet te mounten en te controleren en chainloader +1 vertelt GRUB de controle over te dragen aan het programma dat in de eerste sector van die partitie bestaat.

Laten we Windows kiezen en gaan we.

Terwijl dat in orde is,

Bij het gebruik van GRUB met Windows komt GRUB tot de tweede fase bootloader. Leest grub.conf en geeft de knop vervolgens door aan de Windows-bootlader.

Dat is de basis van multi-booting van dual booting met Linux en Windows met behulp van GRUB.

Aanbevolen artikelen

Dit is een handleiding GRUB installeren. Hier bespreken we hoe GRUB te configureren en installeren en de basisprincipes van multi-booting van dual booting met Linux en Windows met behulp van GRUB. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. Hoe Linux te installeren
  2. DHCP-server in Linux
  3. Windows-operators
  4. Inleiding tot Windows