www.wikidata.de-de.nina.az
Grand Unified Bootloader kurz GRUB englisch fur Grosser vereinheitlichter Bootloader ist ein freies Bootloader Programm das oft zum Starten von unixoiden Betriebssystemen wie z B Linux eingesetzt wird GRUBBildschirmfoto des GRUB Menus von DebianBasisdatenMaintainer Yoshinori K OkujiEntwickler Das GRUB TeamErscheinungsjahr 1995 1 Aktuelle Version 2 06 2 8 Juni 2021 Betriebssystem Installation Unix Derivate Laufzeit plattformubergreifendProgrammiersprache C AssemblerspracheKategorie BootloaderLizenz GPL 3 Freie Software deutschsprachig jagnu org software grubGRUB wurde innerhalb des GNU Hurd Projektes als Bootloader entwickelt und wird unter der GPL bereitgestellt Aufgrund seiner hoheren Flexibilitat verdrangte GRUB in vielen Linux Distributionen den traditionellen Bootloader Linux Loader LILO GRUB wird auch in Solaris 10 x86 benutzt Die aktuelle Version GRUB 2 welche erstmals im Juni 2012 veroffentlicht wurde 3 stellt eine komplette Uberarbeitung der 0 9x Reihe dar Diese wird daher als GRUB Legacy bezeichnet englisch legacy Altlast Erbe Hinterlassenschaft Inhaltsverzeichnis 1 Leistungsmerkmale 2 Funktionsweise 2 1 GRUB allgemein und GRUB Legacy 2 2 GRUB 2 2 3 Besonderheiten von GRUB 3 Erweiterungen 4 Siehe auch 5 Weblinks 6 EinzelnachweiseLeistungsmerkmale BearbeitenLiest verschiedene Dateisysteme GRUB Legacy bis GRUB 0 9x ext2 ext3 UFS UFS2 ReiserFS FAT JFS Minix FFS XFS mit distributionsspezifischen Erweiterungen auch weitere GRUB2 ab GRUB 1 9x zusatzlich ext4 ZFS und btrfs Bootet verschiedene Betriebssysteme per Auswahlmenu und automatischem Zeitablauf Linux und Windows als Multi Boot System Bootet Betriebssysteme von Festplatten Disketten CD und DVD Laufwerken sowie Flash Disks Verfugt uber einen eingebauten Kommandozeileninterpreter Shell Ist relativ einfach konfigurierbar Farben Hintergrundbild Struktur usw Kann mit einem Passwort gesichert werden Kann uber TFTP bereitgestellte Linux Kernel booten Funktionsweise Bearbeiten nbsp GRUB Customizer ein Konfigurationstool fur GRUB 2 nbsp GNU GRUB auf MBR partitionierter Festplatte nbsp GNU GRUB auf GPT partitionierter Festplatte nbsp boot img ist exakt 446 Bytes gross und befindet sich zusammen mit der Partitionstabelle im MBR Sektor 0 core img wird in die leeren Sektoren zwischen MBR und erster Partition geschrieben falls verfugbar die erste Partition beginnt ublicherweise bei Sektor 63 oder 4096 anstatt Sektor 1 das muss aber nicht vorliegen Das Verzeichnis boot grub kann auf einer eigenen Partition liegen oder auf der Partition GRUB allgemein und GRUB Legacy Bearbeiten Normalerweise wird der Bootloader von GRUB die sogenannte Stage 1 in den Master Boot Record MBR geschrieben welcher sich in den ersten 512 Bytes des primaren Laufwerkes befindet Aufgrund des durch die Partitionstabelle zusatzlich beschrankten Platzes kann die Stage 1 nur den ersten Sektor der sogenannten Stage 2 laden In diesem Sektor befinden sich der Programmcode und eine Blockliste zum Lesen der restlichen Sektoren von Stage 2 Die Stage 2 kann sich auf einer beliebigen Partition befinden Unter Unix Systemen befindet sie sich meistens unter boot grub stage2 Stage 2 enthalt die Dateisystemtreiber den Programmcode fur das Auswahlmenu und die GRUB Kommandozeile sowie die Laderoutine fur die Kernel Nach dem Laden von Stage 2 wird sofern vorhanden die Konfigurationsdatei boot grub menu lst eingelesen und verarbeitet In dieser Datei sind die Eintrage des Auswahlmenus definiert welche nun in der Konsole angezeigt werden Aus dem Menu konnen nun das zu bootende Betriebssystem ausgewahlt oder Befehle uber die Kommandozeile direkt an GRUB gesendet werden Stage 2 stellt somit den eigentlichen Bootloader dar welcher einen Kernel oder den Bootsektor einer Partition ladt Diese zweistufige Aufteilung des Bootloaders hatte den Nachteil dass der Bootloader nach Verschieben oder Anderungen von Stage 2 nicht mehr bootfahig war Deswegen wurde zwischen Stage 1 und 2 eine Zwischenstufe Stage 1 5 eingefuhrt Diese liegt auf den Datenblocken zwischen MBR bzw Stage 1 und dem ersten Block der ersten Partition und ist in der Lage genau ein Dateisystem zu lesen Dabei wird die Variante installiert welche das Dateisystem jener Partition unterstutzt auf welcher Stage 2 liegt Zurzeit gibt es Stage 1 5 fur die Dateisysteme FAT Minix ext2 ext3 JFS ReiserFS UFS2 XFS 4 sowie Joliet 5 Unterstutzung fur Reiser4 6 und ext4 7 gibt es durch Patches von Drittanbietern GRUB 2 Bearbeiten Fur den Nachfolger GRUB 2 wurde ein vollstandiges Redesign durchgefuhrt und auf Ruckwartskompatibilitat zu GRUB Legacy verzichtet Die Stage 2 wurde in einen Kernel kernel img und viele ladbare Module mod aufgeteilt Der Kernel enthalt nur essentiellen Code mit Dekompression ELF Lader fur Module Festplattenzugriff und eine Rettungs Shell Bei der Installation werden die Module fur das Dateisystem das die restlichen Komponenten enthalt an den Kernel angehangt und als Datei core img abgelegt Hierbei kommt eines der Kompressionsverfahren LZMA oder LZO zum Einsatz so dass die komprimierte Datei z B noch im Bootbereich hinter dem MBR abgelegt werden kann Bei der Nutzung einer GPT erfolgt diese Ablage in eine eigens dafur vorgesehene BIOS Boot Partition Nach dem Laden wird der Code entpackt und die Konfigurationsdatei boot grub grub cfg geladen Bei Bedarf werden Module fur weitere Dateisysteme Bootmenu Bootroutinen fur verschiedene Betriebssysteme und GRUB Shell vom Dateisystem nachgeladen Neben der Shell ahnlichen Skriptsprache bietet GRUB 2 auch Unterstutzung fur die Sprache Lua Des Weiteren lasst sich GRUB 2 auch als Payload fur die freie BIOS Alternative coreboot verwenden 8 Dabei muss GRUB nicht wie ublich in den MBR geschrieben werden sondern wird zusammen mit coreboot direkt in den Flash Speicher Baustein BIOS Chip des Systems geschrieben Beim Bootvorgang ubergibt coreboot nachdem es die Hardware initialisiert hat die Kontrolle an GRUB welches anschliessend wie ublich ein Menu anzeigt und das Laden eines Kernels erlaubt Die unterstutzten Plattformen und Architekturen sind neben IA 32 also sowohl 32 Bit x86 als auch x64 Linux ublich amd64 aber auch oft als x86 64 also x86 64 Bit bezeichnet nun auch Open Firmware basierte PowerPC Rechner Power Mac und Pegasos und ab GRUB 2 02 auch ARM und ARM64 64 Bit ab ARMv8 9 An der Unterstutzung von UltraSparc wird gearbeitet 10 11 Besonderheiten von GRUB Bearbeiten GRUB kann uber das Dateisystem auf die als normale Dateien gespeicherten Betriebssystemkerne zugreifen Andere Bootloader wie zum Beispiel LILO waren lange Zeit auf Konfigurationsdaten angewiesen die angeben in welchen Datenblocken der Kernel liegt Diese Angaben konnen sich nach einem Kernel Update andern und die entsprechenden Konfigurationsdaten mussen neu geschrieben werden Dieser Schritt ist bei GRUB dagegen nicht notwendig Erweiterungen BearbeitenDer Standard GRUB stellt wie oben beschrieben einen eigenen Bootblock zur Verfugung Das fuhrt dazu dass man GRUB normalerweise nicht von einem bestehenden Betriebssystem aus starten kann Die GRUB Shell ist unter Linux zuganglich eine Alternative stellt das Projekt GRUB4DOS bereit welches GRUB so erweitert dass es als Programm unter DOS bzw als GRLDR aus dem Windows XP NT Bootmenu heraus startbar ist Letzteres erspart das umstandliche Extrahieren des Linux Bootblocks mittels dd in eine Datei Jedoch ist Grub4dos nur fur DOS und 32 bit Windows Systeme die dazu kompatibel sind verfugbar Auf 64 Bit Systemen konnen keine DOS Programme ausgefuhrt werden Mit TrustedGRUB wird derzeit eine Erweiterung von GRUB entwickelt die Trusted Platform Module TPM unterstutzt 12 Siehe auch BearbeitenListe von BootloadernWeblinks Bearbeiten nbsp Commons GNU GRUB Sammlung von Bildern Videos und Audiodateien Homepage von GRUB englisch GRUB for DOS englisch Artikel zu Anderungen in GRUB 2 Tutorial zu GRUB Legacy englisch Tutorial zu GRUB2 englisch The GRUB MBR A Disk Editor View and Comments on the Code Erklart Arbeitsweise von GRUB 1 im Detail englisch Einzelnachweise Bearbeiten www gnu org abgerufen am 29 September 2016 Daniel Kiper GRUB 2 06 released 8 Juni 2021 englisch abgerufen am 2 August 2021 GRUB 2 00 Boot Loader Officially Released Abgerufen am 25 November 2017 Sourcecode von Grub 0 97 Gzip 972 kB PATCH support joliet extension in iso9660 filesystem Reiser4 Howto GRUB PATCH RFE ext4 support in grub GRUB 2 als coreboot Payload GRUB on ARM Memento des Originals vom 28 Januar 2016 im Internet Archive nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot wiki linaro org englisch abgerufen am 18 Oktober 2015 Both ARM and ARM64 are now supported in upstream GRUB both are available in the grub 2 02 betas and included in several Linux distributions The ARM port supports U Boot but should shortly support also UEFI and the ARM64 port supports UEFI GNU GRUB FAQ englisch abgerufen am 18 Oktober 2015 The current release is working on Intel AMD PCs OpenFirmware based PowerPC machines PowerMac and Pegasos EFI based PC IntelMac and coreboot formerly LinuxBIOS and is being ported to UltraSparc Wordpress Blog GRUB on Sparc englisch abgerufen am 18 Oktober 2015 Projektseite von TrustedGRUB auf SourceForge net Abgerufen von https de wikipedia org w index php title Grand Unified Bootloader amp oldid 225033495 GRUB 2