Installieren Sie GRUB - Wie konfiguriere und installiere ich GRUB?

Inhaltsverzeichnis:

Anonim

Überblick über die Installation von GRUB

GRUB steht für Grand Unified Bootloader. Wenn auf Ihrem System mehrere Kernel-Images installiert sind, können Sie auswählen, welches ausgeführt werden soll. GRUB zeigt einen Begrüßungsbildschirm an und wartet einige Sekunden, sofern Sie nichts eingeben. Es wird das Standard-Kernel-Image geladen, das in der Grub-Konfigurationsdatei angegeben ist. In diesem Thema erfahren Sie mehr über die Installation von GRUB.

Wie konfiguriere und installiere ich GRUB?

Die Grub-Konfigurationsdatei lautet /boot/grub/grub.conf

Es enthält Kernel und Initrd Image.

Standard-Bootloader für RHEL6 (Red Hat Enterprise Linux 6) auf x86- und x64-Systemen

Richten Sie die GRUB-Dateien in / boot / grub ein und platzieren Sie sie in der Boot-Spur:

Wenn wir also hier auf eine Befehlszeile springen und uns im Verzeichnis / boot / grub / anmelden und grep 1_5

Wir sehen eine Reihe von dateisystemspezifischen Bootloadern der Stufe 1.5. Also eins für ext, eins für reiser, eins für xfs und mehr. Interessanterweise greifen Sie mit GRUB auf das Dateisystem ext2, ext3 und ext4 zu, alle mit demselben Treiber.

Die Konfiguration des GRUB-Bootloaders erfolgt durch Bearbeiten der Datei /boot/grub/grub.conf. Es heißt das Bootgrub-Menü in der Befehlszeile, siehe Befehl unten.

Schauen wir uns also an, wie die Datei aussieht.

Es ist eine ziemlich kleine Konfigurationsdatei. Lassen Sie es uns in seine Hauptkomponente zerlegen

An der Spitze hier haben wir Art der globalen Einstellungen,

Und dann haben wir unten die betriebssystemspezifischen Einstellungen. In unserem Beispiel haben wir nun Einstellungen für zwei Betriebssysteme, Windows 8 und RHEL 6.

Aber schauen wir uns zuerst die globale Umgebung an. Standard = 0 hier. Nun, dies sagt uns, dass GRUB, sofern wir den Startvorgang nicht unterbrechen und GRUB nichts anderes mitteilen, die erste Betriebssystemoption bootet, die wir unten angegeben haben. Für uns bedeutet RHEL 6 Timeout = 10, dass GRUB uns 10 Sekunden geben soll, in denen wir starten Sie können eine Taste drücken, um den Startvorgang zu unterbrechen.

Dann ein Splash-Image, das einfach ein benutzerdefiniertes Splash-Image hinter dem Startmenü platziert, das normalerweise nicht so wichtig ist, außer vielleicht für das Branding.

Die hier ausgeblendete Menüoption blendet das Menü der Betriebssystemoptionen aus, es sei denn, wir drücken eine Taste. Eigentlich,

Lassen Sie uns einen Blick darauf werfen, wie der frühe Startvorgang mit und ohne diese versteckte Menüoption aussieht. Wir werden es uns also zuerst ohne das versteckte Menü ansehen.

Okay, sehen Sie hier, wie wir das Menü mit den verschiedenen Betriebssystemoptionen sehen können.

Und hier unten sehen wir einen Timer, der angibt, wie lange es dauert, bis der Bootvorgang fortgesetzt wird.

Multi-Booting kann etwas kompliziert sein. Mit versteckten Menüs können wir dieses Menü ausblenden. Stattdessen erhalten wir nur Folgendes.

Okay, wenn wir eine Taste drücken, kehren wir zum Boot-Menü zurück, das wir gerade gesehen haben.

Wenn wir keine Taste drücken, bootet das System nur und um ehrlich zu sein, wird in der Regel die verborgene Menüoption angegeben. Das sind die wichtigsten globalen Einstellungen. Wir können ein paar weitere hinzufügen, wenn wir beispielsweise Fallback-Optionen benötigen, für den Fall, dass die Standardoption fehlschlägt.

Lassen Sie uns nun einen kurzen Blick auf die betriebsspezifischen Einstellungen werfen. Zurück zu unserer GRUB-Konfigurationsdatei, und wir haben zwei Betriebssysteme definiert, RHEL 6 und Windows 8.

Für jedes Betriebssystem benötigen wir mindestens drei Zeilen, title, root und kernel, und für Linux benötigen wir eine weitere Zeile, initrd.

Der Titel ist also beliebig. Sie können hier so ziemlich alles unterbringen, was Sie wollen. Wir haben das mit der Windows 8 Option gemacht. GRUB hat das Betriebssystem nicht erkannt. Setzen Sie einfach andere ein, und wir haben es manuell auf Windows 8 geändert.

Als nächstes entwurzeln. Auf diese Weise können wir das Stammverzeichnis für GRUB angeben.

Standardmäßig unterscheidet sich die Art und Weise, wie GRUB Festplatten und Partitionen anspricht, von der des Kernels.

Für unsere RHEL-Installation haben wir hier hd0, 2. Nun, zuerst brauchen wir Klammern. Dann fügen wir die HD hinzu, die für Festplatte steht.

Jetzt ist es GRUB egal, ob es sich um ein SCSI-Laufwerk (Small Computer System Interface) handelt. Eine ID oder ein ATA-Laufwerk. Es könnte wirklich nicht weniger interessieren. In Bezug auf GRUB sind es nur Festplatten, daher nennt GRUB sie alle HD-Dateien.

Dann ist die erste Nummer hier die Gerätenummer gemäß BIOS, wobei 0 das erste Plattengerät im System ist. Und denken Sie daran, dass GRUB ein richtiges Computersystem ist. Es beginnt bei 0 zu zählen, nicht bei 1. Dann brauchen wir ein Komma und geben ihm die Partitionsnummer.

Wieder ist 0 die erste Partition. Es ist wirklich wichtig, wenn ein Arbeitsverzeichnis mit dem MBR.

Wir würden hd0 verwenden, um den MBR auf dem ersten Gerät zu adressieren, hd1, um den MBR oder den Volume Boot Record auf dem zweiten Gerät zu adressieren. Also, was wir hier haben, ist die dritte Partition auf der ersten Festplatte im System,

Also Laufwerk 0, Partition 2.

Wenn der Kernel dieses Gerät ansprechen würde, würde er sda3 verwenden. Und so wie der Kernel GRUB auch ein Gerät adressieren kann, ohne Partitionen mit sich zu führen, wäre das Äquivalent von devsda in der Instanz natürlich hd0 in Klammern eingeschlossen.

Als nächstes die Kernel-Zeile hoch. Hier geben wir den Speicherort des Kernels sowie alle Boot-Zeit-Parameter an, die wir an ihn übergeben möchten. Wir werden hier etwas Zeit aufwenden.

Zunächst wird der Speicherort des Kernels anhand seines Speicherorts in einem Dateisystem festgelegt. Denken Sie daran, dass wir bis zur grub.conf mit dem Bootloader der Stufe 2 arbeiten, der sich mit Dateisystemen auskennt, sodass wir nichts wie Blocklistennotation verwenden müssen.

Wir können ihm einfach einen Standard-UNIX-Dateisystempfad geben.

Als nächstes nennt man das Kernel-Image vmlinuz, die Version des Kernels und die Architektur, also für uns eine Version des 2.6.32-Kernels. Ja, es ist alt, aber absolut stabil und für x86 / x64-Architekturen geeignet.

Der VM-Teil ist ein Rückblick auf die Zeit, in der die Unterstützung des virtuellen Speichers eine große Rolle spielte, und das Slappen von VM an der Vorderseite teilte allen mit, dass das System den virtuellen Speicher unterstützte, und das Z oder das Zed am Ende sagt uns, dass es sich um ein Kernel-Image handelt komprimiertes Bild, das es klein hält.

Obwohl der Kernel selbst ein Programm ist und mit einer gewissen Assembly in C geschrieben ist, wird er auf unserem System als komprimiertes Image namens vmlinuz gespeichert.

Jetzt haben wir das Root-Dateisystem hier auf unserem logischen Datenträger und es ist als schreibgeschützt angegeben.

Jetzt, später im Bootprozess, wird es wieder als Lese- / Schreibzugriff bereitgestellt.

Verschlüsselungspartition von rd _NO_LUKS

Für Linux-Betriebssysteme haben wir hier eine Zeile, die mit dem Befehl initrd beginnt.

Also ein paar Dinge über initrd.

Zunächst die Abkürzung für die anfängliche RAM-Disk und das Disk-Image, das mit Treibern, Modulen und ähnlichen Elementen geladen ist, die der Kernel benötigt, um den Startvorgang am Laufen zu halten.

Denken Sie daran, dass der Kernel klein ist und nicht Treiber für alle Arten von Festplatten auf der Welt enthält. Diese initrd-Datei wird also als temporäres Root-Dateisystem in den Speicher geladen, daher der Name RAM-Disk. Der Kernel verwendet sie dann, um auf Module zuzugreifen und diese zu laden, die für andere Aufgaben im Startprozess erforderlich sind.

Das zweite, was richtig an initrd ist, ist, dass initrd eine Art Legacy-Bezeichnung dafür ist, da es sich heutzutage, zumindest seit den 2.6-Kerneln, um ein initramfs-Image handelt.

Das initramfs ist eine verbesserte Form von initrd, daher wurde initrd blockiert, das Geräte-Image wurde in den Speicher geladen, aber auf es wird wie auf ein Blockiergerät zugegriffen. Daten, die darauf gelesen oder geschrieben wurden, wurden von Linux zwischengespeichert.

Also würden wir initrd in den Speicher laden.

Das initramfs ist anders, es ist besser. Auf hohem Niveau.

Es wird nur der Cache gemountet, also keine Duplizierung.

Wir haben initramfs bekommen, das zu unserer Kernel-Version und Architektur passt, und so ist GRUB konfiguriert, um Linux zu booten.

Jetzt haben wir mehrere Versionen von Linux auf unserer Maschine RHEL, Fedora, Mint, wie Sie es nennen.

Diese werden hier ebenfalls in gleicher Weise aufgeführt. Und GRUB kann den Linux-Kernel direkt laden, wir nennen diese Art des Bootens direktes Booten oder direktes Laden.

GRUB kann den Windows-Kernel nicht direkt laden. Also lädt es Windows über einen Mechanismus namens Chain Loading

+1 Option ist hier unten, was dann passiert, wenn GRUB den Startvorgang startet, aber schließlich die Steuerung an den Windows-Bootloader übergibt, der auf der ersten Partition der ersten Festplatte installiert ist, wie hier angegeben durch (hd0, 0).

Dies zeigt auch an, dass Windows vor Linux installiert wurde.

Diese rootnoverify-Option hier weist GRUB an, die Partition nicht bereitzustellen und zu überprüfen, und Chainloader +1 weist GRUB an, die Steuerung an das Programm zu übergeben, das im ersten Sektor dieser Partition vorhanden ist.

Wählen wir Windows und los geht's.

Nun, während das in Ordnung Stiefel,

Bei der Verwendung von GRUB unter Windows steigt GRUB in den Bootloader der zweiten Stufe ein. Liest die Datei grub.conf und übergibt die Schaltfläche an den Windows-Bootloader.

Das sind die Grundlagen des Multi-Bootens von Dual-Booten unter Linux und Windows mit GRUB.

Empfohlene Artikel

Dies ist eine Anleitung Installieren Sie GRUB. Hier werden die Vorgehensweise zum Konfigurieren und Installieren von GRUB sowie die Grundlagen des Mehrfachbootens beim Doppelbooten unter Linux und Windows mit GRUB erläutert. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -

  1. So installieren Sie Linux
  2. DHCP Server unter Linux
  3. Windows-Operatoren
  4. Einführung in Windows