Home » Best Choice refit bootmanager Update New

Best Choice refit bootmanager Update New

by Tratamien Torosace

You are viewing this post: Best Choice refit bootmanager Update New

Siehe Thema refit bootmanager


Bootloader – Wikipedia New

2022-3-10 · Ein Bootloader (englische Aussprache [ˈbuːtˌloʊdɚ], von der verkürzten Form des ursprünglichen Wortes bootstrap loader), auch Startprogramm genannt, ist eine spezielle Software, die gewöhnlich durch die Firmware (z. B. UEFI, oder dessen Vorgänger bei IBM-kompatiblen PCs, dem BIOS) eines Rechners von einem startfähigen Medium geladen und …

+ mehr hier sehen

Read more

Ein Bootloader (ausgesprochen [ˈbuːtˌloʊdɚ], von der verkürzten Form des ursprünglichen Wortes Bootstrap Loader), auch Launcher genannt[1], ist eine spezielle Software, die normalerweise von der Firmware (z

B

UEFI oder seinem Vorgänger in IBM-kompatiblen PCs) ausgeführt wird , das BIOS) eines Computers von bootfähigen Medien geladen und dann ausgeführt

Der Bootloader lädt dann andere Teile des Betriebssystems, normalerweise einen Kernel

Deshalb spricht man auch oft vom Bootcode, dem ersten Programm (Maschinencode), das nach der unveränderlichen Firmware von einem wechselbaren, variablen Datenspeicher geladen wird

Den Vorgang selbst nennt man Booten (auf Deutsch auch Starten) eines Rechners

Der englische Begriff Bootstrap bezeichnet ursprünglich die Schlaufe, die sich auf der Rückseite eines Stiefels befindet, um das Anziehen des Stiefels zu erleichtern

Der Prozess des Bootens (das Ausführen eines Programms auf einer Maschine, auf der noch kein Betriebssystem läuft) erinnert ein wenig an den Versuch, sich an seinem eigenen Boot-Strap[2][3] aus dem Schlamm zu ziehen

Wo sich der Bootloader auf dem Wechseldatenspeicher befindet und wie er geladen wird, hängt von der Computerarchitektur und -plattform ab

Auf moderneren Architekturen liegt es meist als Datei auf einem von der Firmware unterstützten Dateisystem auf einer bestimmten Partition und wird direkt geladen und ausgeführt

Dies ist beispielsweise bei Open Firmware und bei UEFI der Fall, wobei die verwendeten Partitionstabellen und Dateisysteme unterschiedlich sein können

Der Bootloader selbst muss auch in einem bestimmten ausführbaren Dateiformat vorliegen

Dies kann zum einen an der Prozessorarchitektur und insbesondere dessen Befehlssatz liegen, z.B

B

PE/COFF in UEFI, oder die Firmware implementiert ein architekturübergreifendes Zwischencodeformat wie z

B

Firmware mit Forth FCODE öffnen

Einige ältere Architekturen laden den Bootloader von einem vordefinierten Block bootfähiger Medien, der auch als Bootblock oder häufiger als Bootsektor bezeichnet wird

Bei IBM-PC-kompatiblen Rechnern mit BIOS steht dieser immer im ersten Block, Block 0, der üblicherweise einen Master Boot Record (MBR) als Startprogramm und als Partitionstabelle auf partitionierten Datenträgern enthält

Bootloader werden auch in eingebetteten Systemen verwendet

Der Bootloader kann dort nicht nachgeladen werden, sondern befindet sich im nichtflüchtigen Speicher des Steuergeräts

Es enthält grundlegende Initialisierungsroutinen und häufig Kommunikationsprotokolle, um den Austausch von Anwendungsprogrammen zu ermöglichen

Ein Bootmanager ist ein Dienstprogramm, das auf einem Betriebssystem installiert werden kann und einen eigenen Bootloader enthält und erweiterte Konfigurationsoptionen bietet

Mehrstufige Bootloader [ bearbeiten | Quelle bearbeiten ]

Unterteilt sich ein Bootloader in mehrere Stufen, die aufeinander aufbauen, spricht man von einem mehrstufigen Bootloader

Diese Einteilung in Stufen ist z

B

erfolgen, wenn der Programmcode des Bootloaders nicht in den Bootsektor passt; an dieser Stelle wird also nur die erste Stufe geladen und ausgeführt, die dann die zweite Stufe lädt und ausführt, von der die erste Stufe nur die Länge, die Blocknummer und die Nummer des Mediums kennt

Die zweite Stufe kann nun mit dem spezifischen Dateisystem des Mediums umgehen und verwendet einen Dateinamen, um die dritte Stufe zu laden

Die dritte Stufe ist nun der eigentliche Bootloader und lädt eine Konfigurationsdatei, die z.B

B

ein Auswahlmenü enthält

Ein Menüpunkt könnte die Anweisung enthalten, einen Bootloader von einer anderen Partition zu laden.

Diese mehrstufige Struktur hat mehrere Vorteile: Im oben beschriebenen Fall kann die Datei des eigentlichen Bootloaders (Ebene 3) beliebig verändert oder sogar physikalisch verschoben werden, da die zweite Ebene mit dem Dateisystem und die dritte Ebene umgehen kann finden Sie es anhand des Dateinamens

Außerdem unterliegt ein solcher Bootloader nicht den Beschränkungen der Länge eines Bootblocks

Es ist auch möglich, dass sich mehrere Bootloader wie in einer Befehlskette nacheinander aufrufen

Solche Aufrufe – meist über mehrere Partitionen hinweg – werden auch als Chain Loading bezeichnet

Hier kann zunächst ein Bootloader geladen werden, z.B

B

ein Bootmenü zur Betriebssystemauswahl darstellt, und dann, je nach Auswahl in diesem Menü, den entsprechenden (betriebssystemspezifischen) Bootloader

Auf diese Weise können mehrere unterschiedliche Betriebssysteme nebeneinander in einem sogenannten Multi-Boot-System auf einem Rechner betrieben werden

Bootloader mit Zusatzfunktion [Bearbeiten | Quelle bearbeiten ]

Einige Bootloader sind überhaupt keine Bootloader, die ausschließlich dazu dienen, ein Betriebssystem zu starten

Beispiele:

Bootloader, die lediglich anzeigen sollen, dass ein eingelegtes Medium nicht bootfähig ist, z

Beispielsweise wird bei Disketten die Textausgabe „Non-System disk or disk error

Ersetzen und drücken Sie eine beliebige Taste, wenn Sie bereit sind. ..“ (MS-DOS 5.0, FAT12/16) [4]

“ (MS-DOS 5.0, FAT12/16) Bootloader, der andere Bootloader auf erkannten Datenträgern erkennt und startet

Zur Zeit von MS-DOS gab es einige Formatierungsprogramme für Disketten, die es ermöglichten, eine Auswahl eines anderen Geräts zu starten, das über das BIOS angesprochen werden konnte

So könnte man z

B

mit FDFORMAT oder VGA-COPY/386 einen Bootsektor auf Disketten schreiben, der entweder automatisch oder von der Festplatte gestartet werden könnte

Dies ist auch z

Dies ist beispielsweise bei Windows-Installations-CDs der Fall: Wird auf einer erkannten Festplatte (oder SSD) ein bereits installiertes Betriebssystem erkannt, booten diese nur bei Tastendruck von der CD, ansonsten wird die lokale Festplatte gebootet

Das Installationsprogramm kann den Computer nach erfolgreicher Installation sofort neu starten

Gebootet wird wieder von der CD, aber jetzt ohne Tastendruck ruft sich das Installationsprogramm nicht mehr selbst auf, sondern übergibt die Kontrolle an die neue Installation

Bootloader, die ein Anwendungsprogramm sofort starten

Einige Programme, wie zB Memtest86, können ohne Dateisystem direkt von einer Diskette gestartet werden

In den 1980er Jahren verfügten IBM-kompatible PCs über sogenannte PC-Booter-Computerspiele, die direkt von der Diskette und ohne Betriebssystem gestartet wurden

Computerspiele, die direkt von der Diskette und ohne Betriebssystem gestartet werden

Bootloader, die fehlende oder fehlerhafte Funktionen des BIOS in PC-kompatiblen Computern in Software (statt Firmware) umwandeln

Dies wurde früher verwendet, um BIOS-Funktionen zu erweitern, um auf den Speicher von Festplatten größer als 512 MiB, 8 GiB, 32 GiB oder 128 GiB, wie z

B

EZ-Drive oder OnTrack Disk Manager, vollständig zuzugreifen Loader, und in dieser speziellen Form Computerviren, die bereits beim Start des Computers aktiviert werden

Bootmanager sind Bootloader, die zB B

als Utility auf einem bestimmten Betriebssystem installiert werden kann

Im Vergleich zum vom Betriebssystem bereitgestellten Bootloader bieten sie meist erweiterte Konfigurationsmöglichkeiten, etwa ein Bootmenü für Multi-Boot-Konfigurationen

Beispiele: GRUB auf IBM-kompatiblen PCs mit BIOS oder UEFI (GRUB2 auch auf anderen Architekturen und Plattformen, wie Open Firmware auf PowerPC), rEFIt und rEFInd auf x86 UEFI-PCs.

Bootloader, die eine andere Firmware laden

Beispielsweise kann Tianocore EDK2 (UEFI) von einem Wechseldatenträger auf einem PC mit BIOS gestartet werden, der dann ein modernes Betriebssystem starten kann, das UEFI erfordert

Ebenso z

B

Open Firmware oder Coreboot per Bootloader gestartet werden.

Installing rEFInd for dual booting Linux (Graphical Bootmanager) New Update

Video ansehen

Neue Informationen zum Thema refit bootmanager

refit bootmanager Ähnliche Bilder im Thema

 Update Installing rEFInd for dual booting Linux (Graphical Bootmanager)
Installing rEFInd for dual booting Linux (Graphical Bootmanager) New Update

UEFI boot: how does that actually work, then? | AdamW on … Neueste

2014-1-25 · Really, my intent in designing rEFInd (or expanding rEFIt‘s OS-scanning features; it’s only fair to give credit to Christoph Pfisterer, rEFIt‘s creator, for designing the basic framework) is the same as what you want, at a broad level: To launch any OS’s boot loader with little or no extra configuration. rEFInd does this without relying on the …

+ Details hier sehen

Read more

Es ist wieder AdamW Essay Time! Wenn Sie etwas Kurzes und Bissiges suchen, schauen Sie sich woanders um

Kamil Paral teilt mir freundlicherweise mit, dass ich chronisch an Graphomania leide

Es ist immer schön zu wissen, was mit dir nicht stimmt

Es soll ein paar verbreitete Mythen zerstreuen und normalen Menschen helfen, UEFI ein bisschen besser zu verstehen

Es ist keine detaillierte und 100% technisch genaue Erklärung auf niedriger Ebene, und ich bin kein professioneller Firmware-Ingenieur oder so etwas

Wenn Sie tatsächlich ein Betriebssystem oder Hardware oder so etwas bauen, verlassen Sie sich bitte nicht auf meine vereinfachten Erklärungen oder fragen Sie mich um Hilfe; Ich bin nur ein Idiot im Internet

Wenn Sie so etwas tun und Geld haben, treten Sie dem UEFI-Forum bei oder fragen Sie Ihre Lieferanten oder überprüfen Sie Ihre Referenzimplementierung oder was auch immer

Wenn Sie kein Geld haben, fragen Sie netterweise Ihre Kollegen mit mehr Erfahrung

ENDE WICHTIGER HINWEIS

Sie haben wahrscheinlich im Internet viel über UEFI gelesen

Hier ist etwas Wichtiges, das Sie verstehen sollten: 95% davon war wahrscheinlich Müll

Wenn Sie denken, dass Sie über UEFI Bescheid wissen und Ihr Wissen irgendwo anders als in den UEFI-Spezifikationen erworben haben, dann im Blog von mjg59 oder an einem der wenigen anderen vage zuverlässigen Orte/Personen – Rod Smith oder Peter Jones oder Chris Murphy oder in der Dokumentation der relativ wenige Betriebssysteme, deren Entwickler wirklich wissen, was zum Teufel sie mit UEFI machen – was Sie zu wissen glauben, ist wahrscheinlich eine giftige Mischung aus Missverständnissen, Missverständnissen, Halbwahrheiten, Propaganda und regelrechten Lügen

Also solltest du wahrscheinlich alles vergessen

Gut, jetzt haben wir das aus dem Weg geräumt

Worüber ich hauptsächlich sprechen möchte, ist das Bootloading, denn das ist der Teil der Firmware, der für die meisten Leute am wichtigsten ist, und die Bit-News-Sites hämmern immer darüber und machen wilde Missverständnisse. .

Terminologie

Lassen Sie uns zunächst einige Terminologie aus dem Weg räumen

Sowohl BIOS als auch UEFI sind Arten von Firmware für Computer

Firmware im BIOS-Stil ist (meistens) nur auf IBM-PC-kompatiblen Computern zu finden

UEFI soll allgemeiner sein und kann auf Systemen gefunden werden, die nicht zur Klasse „IBM-PC-kompatibel“ gehören

Sie haben kein „UEFI-BIOS“

Niemand hat ein ‘UEFI-BIOS’

Bitte sagen Sie niemals „UEFI BIOS“

BIOS ist kein allgemeiner Begriff für die gesamte PC-Firmware, sondern eine bestimmte Art von PC-Firmware

Ihr Computer verfügt über eine Firmware

Wenn es sich um einen IBM-PC-kompatiblen Computer handelt, handelt es sich mit ziemlicher Sicherheit entweder um eine BIOS- oder eine UEFI-Firmware

Wenn Sie Coreboot verwenden, herzlichen Glückwunsch, Herr/Frau

Ausnahme

Sie dürfen stolz auf sich sein

Secure Boot ist nicht dasselbe wie UEFI

Verwenden Sie diese Begriffe niemals austauschbar

Secure Boot ist ein einzelnes faktisch optionales Element der UEFI-Spezifikation, das in Version 2.2 der UEFI-Spezifikation hinzugefügt wurde

Wir werden später darüber sprechen, was es genau ist, aber denken Sie vorerst daran, dass es bei UEFI nicht dasselbe ist

Sie müssen verstehen, was Secure Boot und was UEFI ist und über welches der beiden Sie zu einem bestimmten Zeitpunkt tatsächlich sprechen

Wir werden zuerst über UEFI sprechen und dann über Secure Boot als „Erweiterung“ von UEFI, denn das ist es im Grunde

Historischer Bonushinweis: UEFI wurde nicht erfunden von, wird nicht kontrolliert von und hat es getan wurde nie von Microsoft kontrolliert

Sein Vorgänger und Basis EFI wurde von Intel entwickelt und veröffentlicht

UEFI wird vom UEFI-Forum verwaltet

Microsoft ist Mitglied des UEFI-Forums

Das gilt auch für Red Hat, Apple und fast jeden großen PC-Hersteller, Intel (offensichtlich), AMD und eine lange Liste anderer großer und kleinerer Hardware-, Software- und Firmware-Unternehmen und -Organisationen

Es ist eine breite Konsensspezifikation mit all der Unordnung, die damit verbunden ist, auf einige davon werden wir später noch genauer eingehen

Es ist das böse Fahrzeug des Bösen von niemandem

Referenzen

Wenn Sie UEFI wirklich verstehen wollen, ist es eine wirklich gute Idee, die UEFI-Spezifikation zu lesen

Du kannst das

Es ist sehr leicht

Sie müssen niemandem Geld zahlen

Ich werde Ihnen nicht sagen, dass das Lesen der größte Spaß sein wird, den Sie je hatten, denn das wird es nicht

Aber es wird keine Zeitverschwendung sein

Sie finden es direkt hier auf der offiziellen UEFI-Website

Sie müssen ein paar Kästchen ankreuzen, aber Sie unterzeichnen Ihre Seele nicht Satan oder so etwas

Das ist gut

Während ich dies schreibe, ist die aktuelle Version der Spezifikation 2.4 Errata A, und auf diese Version bezieht sich dieser Beitrag

Es gibt keine BIOS-Spezifikation

Das BIOS ist ein De-facto-Standard – es funktioniert so, wie es in den 1980er Jahren auf echten IBM-PCs funktionierte

Das ist einer der Gründe, warum es UEFI gibt

Um die Dinge einfach zu halten, betrachten wir zwei Welten

Die eine ist die Welt der IBM-PC-kompatiblen Computer – im Folgenden nur als PCs bezeichnet – bevor es UEFI und GPT (wir kommen zu GPT) gab

Dies ist die Welt, mit der viele von Ihnen wahrscheinlich vertraut sind und die Sie vielleicht ganz gut verstehen

Lassen Sie uns darüber sprechen, wie das Booten auf PCs mit BIOS-Firmware funktioniert

BIOS bootet

Es funktioniert in der Tat auf sehr, sehr einfache Weise

Auf Ihrem Standard-Old-School-BIOS-PC haben Sie eine oder mehrere Festplatten mit einem MBR

Der MBR ist ein weiterer De-facto-Standard; Grundsätzlich beschreibt der Anfang der Festplatte die Partitionen auf der Festplatte in einem bestimmten Format und enthält einen „Bootloader“, ein sehr kleines Stück Code, das eine BIOS-Firmware ausführen kann und dessen Aufgabe es ist, den Betrieb zu starten System(e)

(Moderne Bootloader sind häufig viel größer, als im MBR-Bereich enthalten sein können, und müssen ein mehrstufiges Design verwenden, bei dem das Bit im MBR nur weiß, wie die nächste Stufe von woanders geladen wird, aber das ist uns im Moment nicht wichtig ).

Alles, was eine BIOS-Firmware im Zusammenhang mit dem Booten des Systems weiß, ist, welche Festplatten das System enthält

Sie, der Besitzer dieses BIOS-basierten Computers, können der BIOS-Firmware mitteilen, von welcher Festplatte das System gestartet werden soll

Darüber hinaus hat die Firmware keine Kenntnis

Es führt den Bootloader aus, den es im MBR der angegebenen Festplatte findet, und das war’s

Die Firmware ist am Booten nicht mehr beteiligt

In der BIOS-Welt werden absolut alle Formen des Multi-Bootings oberhalb der Firmware-Schicht abgewickelt

Die Firmware-Schicht weiß nicht wirklich, was ein Bootloader oder ein Betriebssystem ist

Verdammt, es weiß nicht, was eine Partition ist

Es kann lediglich den Bootloader aus dem MBR einer Festplatte ausführen

Sie können den Boot-Vorgang auch nicht von außerhalb der Firmware konfigurieren

UEFI-Booting: Hintergrund

OK, wir haben also unseren Hintergrund, die BIOS-Welt

Schauen wir uns nun an, wie das Booten auf einem UEFI-System funktioniert

Auch wenn Sie die Details dieses Beitrags nicht verstehen, begreifen Sie Folgendes: Es ist völlig anders

Ganz und gar anders als das Booten im BIOS

Sie können Ihr Verständnis des BIOS-Bootens nicht auf das native UEFI-Booten anwenden

Sie können an einem System, das für die Welt des BIOS-Bootens entwickelt wurde, keine kleinen Änderungen vornehmen und es auf das native UEFI-Booten anwenden

Sie müssen verstehen, dass es sich um eine völlig andere Welt handelt

Hier ist eine weitere wichtige Sache, die Sie verstehen sollten: Viele UEFI-Firmwares implementieren eine Art BIOS-Kompatibilitätsmodus, der manchmal als CSM bezeichnet wird

Viele UEFI-Firmwares können ein System genauso booten wie eine BIOS-Firmware – sie können nach einem MBR auf einer Festplatte suchen und den Bootloader von diesem MBR ausführen und alles anschließend diesem Bootloader überlassen

Manchmal wird diese Funktion fälschlicherweise als „UEFI deaktivieren“ bezeichnet, was sprachlich unsinnig ist

Sie können die Firmware Ihres Systems nicht „deaktivieren“

Es ist nur ein dummer Begriff

Verwenden Sie es nicht, aber verstehen Sie, was die Leute wirklich meinen, wenn sie es sagen

Sie sprechen davon, die Fähigkeit einer UEFI-Firmware zu verwenden, das System im BIOS-Stil zu booten, anstatt im nativen UEFI-Stil.

Was ich beschreiben werde, ist das native UEFI-Booten

Wenn Sie ein UEFI-basiertes System haben, dessen Firmware über die BIOS-Kompatibilitätsfunktion verfügt, und Sie sich entscheiden, es zu verwenden, und diese Entscheidung konsequent anwenden, dann können Sie in Bezug auf das Booten so tun, als wäre Ihr System BIOS-basiert, und zwar gerecht Machen Sie alles so, wie Sie es beim Booten im BIOS-Stil getan haben

Wenn Sie dies jedoch tun, stellen Sie sicher, dass Sie es konsequent anwenden

Ich kann wirklich nicht genug empfehlen, nicht zu versuchen, UEFI-natives und BIOS-kompatibles Booten von fest installierten Betriebssystemen auf demselben Computer und insbesondere nicht auf derselben Festplatte zu mischen

See also  The Best ipe training New

Es ist eine schreckliche schreckliche Idee und wird Ihnen Kummer und Schmerz bereiten

Wenn Sie sich dafür entscheiden, weinen Sie nicht zu mir

Aus Gründen der Vernunft gehe ich davon aus, dass Festplatten mit einer GPT-Partitionstabelle und EFI FAT32 EFI-Systempartitionen verwendet werden

Je nachdem, wie tief Sie in dieses Zeug eintauchen, werden Sie vielleicht feststellen, dass Sie streng genommen nicht immer davon ausgehen können, dass Sie es mit GPT-Festplatten und EFI FAT32 ESPs zu tun haben, wenn Sie mit UEFI-nativem Booten zu tun haben, aber das Die UEFI-Spezifikation ist ziemlich stark an GPT-Festplatten und EFI FAT32-ESPs gebunden, und damit werden Sie es in 99 % der Fälle zu tun haben

Es sei denn, Sie haben es mit Macs zu tun, und ehrlich gesagt, scheiß auf Macs

Anmerkung bearbeiten: Die folgenden Abschnitte (bis zu Implikationen und Komplikationen) wurden am 26.01.2014 stark überarbeitet, einige Stunden nachdem die erste Version dieses Beitrags veröffentlicht wurde up, basierend auf dem Feedback von Peter Jones

Betrachten Sie dies als Version 2.0 des Beitrags

Eine frühere Version war etwas weniger genau und verwirrender geschrieben

UEFI natives Booten: Wie es tatsächlich funktioniert – Hintergrund

Okay, wenn das aus dem Weg ist, kommen wir zum Fleisch

So funktioniert das native UEFI-Booten tatsächlich

Es ist wahrscheinlich hilfreich, mit ein wenig Hintergrundwissen auf hoher Ebene darauf einzugehen

UEFI bietet viel mehr Infrastruktur auf Firmware-Ebene für die Handhabung des Systemstarts

Es ist bei weitem nicht so einfach wie das BIOS

Im Gegensatz zu BIOS versteht UEFI sicherlich in unterschiedlichem Maße die Konzepte von „Festplattenpartitionen“, „Bootloadern“ und „Betriebssystemen“

Sie können sich den BIOS-Startvorgang und den UEFI-Prozess ansehen und sehen wie der UEFI-Prozess verschiedene Bits erweitert, um bestimmte Probleme zu lösen

Der BIOS/MBR-Ansatz zum Auffinden des Bootloaders ist ziemlich ruckelig, wenn man darüber nachdenkt

Es ist eine ganz besondere Soße: Dieser besondere winzige Platz an der Vorderseite der Festplatte enthält magischen Code, der nur für die Systemfirmware und spezielle Dienstprogramme zum Schreiben wirklich sinnvoll ist

Es gibt mehrere Probleme mit diesem Ansatz

Es ist unpraktisch, damit umzugehen – Sie benötigen spezielle Dienstprogramme, um den MBR zu schreiben, und die einzige Möglichkeit, herauszufinden, was darin enthalten ist, besteht darin, den Inhalt herauszuladen und zu untersuchen

Wie oben erwähnt, ist der MBR selbst nicht groß genug dafür viele moderne Bootloader

Sie installieren einen kleinen Teil von sich selbst im eigentlichen MBR und den Rest im leeren Bereich auf der Festplatte zwischen dem Ende des herkömmlichen MBR und dem Beginn der ersten Partition

Dabei gibt es ein ziemlich großes Problem (na ja, das ganze Design ist ein großes Problem, aber egal), nämlich dass es keine verlässliche Konvention dafür gibt, wo die erste Partition beginnen sollte, also ist es schwierig, sicher zu sein, dass genug Platz vorhanden ist

Eine Sache, auf die Sie sich normalerweise verlassen können, ist, dass für einige Bootloader-Konfigurationen nicht genügend Speicherplatz vorhanden ist.

Das Design bietet keine standardisierte Ebene oder keinen Mechanismus zum Auswählen von anderen Boot-Zielen als Festplatten. .

aber die Leute möchten andere Boot-Ziele als Festplatten auswählen

Das heißt, sie möchten mehrere bootfähige “Dinge” – normalerweise Betriebssysteme – pro Festplatte haben

Die einzige Möglichkeit, dies in der BIOS/MBR-Welt zu tun, besteht darin, dass die Bootloader damit umgehen; aber es gibt keine allgemein akzeptierte Konvention für den richtigen Weg, dies zu tun

Es gibt viele, viele verschiedene Ansätze, von denen keiner besonders interoperabel mit den anderen ist, keiner davon ein weithin akzeptierter Standard oder eine Konvention ist, und es ist sehr schwierig, Tools auf der OS / OS-Installationsebene zu schreiben, die Multiboot sauber handhaben

Es ist nur ein sehr unordentliches Design

Das Design bietet keine Standardmethode zum Booten von irgendetwas anderem als Festplatten

Wir werden in diesem Artikel nicht wirklich darüber sprechen, aber seien Sie sich bewusst, dass dies ein weiterer Vorteil des UEFI-Bootens ist: Es bietet eine Standardmethode zum Booten von beispielsweise einem Remote-Server

Es gibt keinen Mechanismus für Ebenen über der Firmware um das Boot-Verhalten der Firmware zu konfigurieren

Sie können sich also vorstellen, dass die UEFI-Elfen herumsitzen und über dieses Problem nachdenken und eine Lösung finden

Anstatt dass die Firmware nur Festplatten und einen „magischen“ Speicherort pro Festplatte kennt, an dem sich der Bootloader-Code befinden könnte, verfügt UEFI auf der Firmware-Ebene über viel mehr Infrastruktur zur Handhabung des Boot-Ladens

Schauen wir uns all die Dinge an, die hier relevant sind

Ausführbare EFI-Dateien

Die UEFI-Spezifikation definiert ein ausführbares Format und erfordert, dass alle UEFI-Firmwares Code in diesem Format ausführen können

Wenn Sie einen Bootloader für natives UEFI schreiben, schreiben Sie in diesem Format

Das ist ziemlich einfach und unkompliziert und bedarf keiner weiteren Erklärung: Es ist nur gut, dass wir jetzt eine Firmware-Spezifikation haben, die tatsächlich ein gemeinsames Format für Code definiert, den die Firmware ausführen kann

Das GPT-Format (GUID-Partitionstabelle)

Das GUID-Partitionstabellenformat ist sehr stark mit der UEFI-Spezifikation verbunden, und auch dies ist nicht besonders komplex oder erklärungsbedürftig, es ist nur ein gutes Stück Grundlagenarbeit, das die Spezifikation bietet

GPT ist nur ein Standard zum Erstellen von Partitionstabellen – die Informationen am Anfang einer Festplatte, die definieren, welche Partitionen diese Festplatte enthält

Dies ist in vielerlei Hinsicht ein besserer Standard als MBR/’MS-DOS’-Partitionstabellen, und die UEFI-Spezifikation erfordert, dass UEFI-kompatible Firmwares in der Lage sein müssen, GPT zu interpretieren (es erfordert auch, dass sie in der Lage sind, MBR zu interpretieren, z Abwärtskompatibilität)

All dies ist eine nützliche Grundlagenarbeit: Was hier vor sich geht, ist, dass die Spezifikation bestimmte Fähigkeiten festlegt, auf die sich alles oberhalb der Firmware-Ebene auf die Firmware verlassen kann

EFI-Systempartitionen

Ich habe mich beim Überarbeiten dieses Beitrags tatsächlich wirklich mit dem Konzept der EFI-Systempartition beschäftigt, und es war ein großartiges „Aha!“ Moment

Tatsächlich ist das Konzept der „EFI-Systempartitionen“ nur eine Antwort auf das Problem des „speziellen“ MBR-Speicherplatzes

Das Konzept einer undefinierten Menge an leerem Speicherplatz am Anfang einer Festplatte, in der sich der Bootloader-Code befindet, ist ein ziemlich beschissenes Design, wie wir oben gesehen haben

EFI-Systempartitionen sind nur die Lösung von UEFI dafür.1

Die Lösung ist folgende: Wir verlangen, dass die Firmware-Schicht in der Lage ist, bestimmte Arten von Dateisystemen zu lesen

Die UEFI-Spezifikation erfordert, dass konforme Firmwares im Wesentlichen die FAT12-, FAT16- und FAT32-Varianten des FAT-Formats lesen können

Tatsächlich kodifiziert es eine bestimmte Interpretation dieser Formate, wie sie zu dem Zeitpunkt existierten, als UEFI akzeptiert wurde, und besagt, dass UEFI-kompatible Firmwares in der Lage sein müssen, diese Formate zu lesen

Wie die Spezifikation es ausdrückt:

„Das vom Extensible Firmware Interface unterstützte Dateisystem basiert auf dem FAT-Dateisystem

EFI definiert eine spezifische Version von FAT, die ausdrücklich dokumentiert und testbar ist

Die Konformität mit der EFI-Spezifikation und den zugehörigen Referenzdokumenten ist die einzige Definition von FAT, die benötigt wird implementiert werden, um EFI zu unterstützen

Um das EFI-Dateisystem von reinem FAT zu unterscheiden, wurde ein neuer Partitionsdateisystemtyp definiert.”

Eine „EFI-Systempartition“ ist wirklich nur jede Partition, die mit einer der UEFI-Spezifikations-definierten Varianten von FAT formatiert ist und einen bestimmten GPT-Partitionstyp erhält, damit die Firmware sie finden kann

Und der Zweck ist genau wie oben beschrieben: Jeder soll sich darauf verlassen können, dass die Firmware-Schicht definitiv in der Lage sein wird, Daten von einer ziemlich “normalen” Festplattenpartition zu lesen

Hoffentlich ist klar, warum dies ein besseres Design ist: Anstatt Bootloader-Code in den „magischen“ Bereich am Anfang einer MBR-Festplatte schreiben zu müssen, können Betriebssysteme und so weiter einfach Partitionen in einem allgemein verständlichen Format erstellen, formatieren und mounten Bootloader-Code und alles andere, was die Firmware lesen soll, dort ablegen

Die ganze ESP-Sache erschien mir zunächst etwas bizarr und verwirrend, also hoffe ich, dass dieser Abschnitt erklärt, warum es eigentlich eine sehr heikle Idee und ein gutes Design ist – Das Bizarre und Verwirrende ist wirklich das BIOS / MBR-Design, bei dem die einzige Möglichkeit für Sie, etwas aus der Betriebssystemschicht zu schreiben, von dem Sie wussten, dass die Firmware-Schicht es verbrauchen könnte, darin bestand, es in einige zu schreiben (aber Sie wussten nicht, wie viel) Magic Space am Anfang einer Platte, eine Konvention, die eigentlich nirgendwo kodifiziert ist

Das ist wirklich kein sehr sensibles oder verständliches Design, wenn Sie einen Schritt zurücktreten und einen Blick darauf werfen verbietet Firmwares selten, irgendetwas anderes zu tun

Es verstößt nicht gegen die Spezifikation, eine Firmware zu schreiben, die Code in anderen Formaten ausführen, andere Arten von Partitionstabellen lesen und Partitionen lesen kann, die mit anderen Dateisystemen als den UEFI-Varianten von FAT formatiert sind

Aber eine UEFI-kompatible Firmware muss zumindest all diese Dinge tun

Wenn Sie also ein Betriebssystem oder etwas anderes schreiben, das Sie auf einer UEFI-kompatiblen Firmware ausführen möchten, ist das Konzept der EFI-Systempartition so wichtig: Es gibt Ihnen ( zumindest theoretisch) 100%iges Vertrauen, dass Sie eine ausführbare EFI-Datei auf einer Partition ablegen können, die mit der UEFI FAT-Implementierung und dem richtigen GPT-Partitionstyp formatiert ist, und die Systemfirmware sie lesen kann

Dies ist die Sache, die Sie zur Bank nehmen können, wie „die Firmware wird in der Lage sein, einen Bootloader-Code auszuführen, den ich in den MBR-Bereich eingefügt habe“ in der BIOS-Welt war

Jetzt haben wir also drei wichtige Grundlagen, die die UEFI-Spezifikation bietet : Dank dieser Anforderungen kann sich jede andere Schicht getrost darauf verlassen, dass die Firmware:

Kann eine Partitionstabelle lesen

Kann auf Dateien in bestimmten Dateisystemen zugreifen

Kann Code in einem bestimmten Format ausführen

Das ist viel mehr, als Sie sich auf eine BIOS-Firmware verlassen können

Um jedoch die Vision einer Firmware-Schicht zu vervollständigen, die das Booten mehrerer Ziele handhaben kann – nicht nur Festplatten – brauchen wir noch ein bisschen Grundlagenarbeit: Es muss einen Mechanismus geben, mit dem die Firmware die verschiedenen möglichen Boot-Ziele findet, und a Weg, es zu konfigurieren.

Der UEFI-Boot-Manager

Die UEFI-Spezifikation definiert etwas, das als UEFI-Boot-Manager bezeichnet wird

(Linux-Distributionen enthalten ein Tool namens efibootmgr, das verwendet wird, um die Konfiguration des UEFI-Boot-Managers zu manipulieren)

Als Beispiel dafür, was Sie erwarten können, wenn Sie die UEFI-Spezifikation lesen, definiert sie den UEFI-Boot-Manager folgendermaßen:

„Der UEFI-Boot-Manager ist eine Firmware-Richtlinien-Engine, die durch Ändern architektonisch definierter globaler NVRAM-Variablen konfiguriert werden kann

Der Boot-Manager versucht, UEFI-Treiber und UEFI-Anwendungen (einschließlich UEFI-Betriebssystem-Bootloader) in einer durch die globalen NVRAM-Variablen definierten Reihenfolge zu laden. “

So, das ist geklärt, weiter geht’s

😉 Nein nicht wirklich

Lassen Sie uns das auf Mensch übersetzen

Mit nur einem vernünftigen Grad an Vereinfachung können Sie sich den UEFI-Boot-Manager als ein Boot-Menü vorstellen

Bei einer BIOS-Firmware ist das „Startmenü“ Ihrer Firmware-Ebene notwendigerweise die Festplatten, die beim Booten mit dem System verbunden sind – nicht mehr und nicht weniger

Bei einer UEFI-Firmware ist dies nicht der Fall

Der UEFI-Bootmanager kann konfiguriert werden – einfach gesagt, Sie können Einträge zum ‘Boot-Menü’ hinzufügen und entfernen

Die Firmware kann auch (es erfordert die Spezifikation in verschiedenen Fällen) effektiv Einträge in diesem Boot-Menü erzeugen, entsprechend den an das System angeschlossenen Festplatten und möglicherweise einigen Firmware-Konfigurationseinstellungen

Es kann auch untersucht werden – Sie können sich ansehen, was darin enthalten ist

Eine ziemlich großartige Sache, die UEFI bietet, ist ein Mechanismus, um dies von anderen Ebenen aus zu tun: Sie können das Systemstartverhalten von einem gestarteten Betriebssystem aus konfigurieren

Sie können all dies mit dem efibootmgr-Tool tun, sobald Sie Linux irgendwie über UEFI gebootet haben

Es gibt auch Windows-Tools dafür, aber ich bin nicht sehr vertraut mit ihnen

Werfen wir einen Blick auf einige typische efibootmgr-Ausgaben, die ich aus den Fedora-Foren gestohlen und leicht angepasst habe:

[[email protected] directory]# efibootmgr -v BootCurrent: 0002 Timeout: 3 Sekunden BootOrder: 0003,0002,0000,0004 Boot0000* CD/DVD Drive BIOS(3,0,00) Boot0001* Hard Drive HD(2,0, 00) Boot0002* Fedora HD(1,800,61800,6d98f360-cb3e-4727-8fed-5ce0c040365d)Datei(\EFI\fedora\grubx64.efi) Boot0003* opensuse HD(1,800,61800,6d98f360-cb3e-4727-5ce5d04-5ce5d04-5ce30c.04-5ce ) )Datei(\EFI\opensuse\grubx64.efi) Boot0004* Festplatten-BIOS(2,0,00)P0: ST1500DM003-9YN16G

[[email protected]]#

Dies ist ein nettes sauberes Beispiel, das ich aus den Fedora-Foren gestohlen und leicht angepasst habe

Wir können sehen, dass hier ein paar Dinge vor sich gehen

Die erste Zeile sagt Ihnen, von welchem ​​der Einträge im ‘Boot-Menü’ Sie gerade gebootet werden

Die zweite ist ziemlich offensichtlich (wenn die Firmware dem UEFI-Boot-Manager eine Bootmenü-ähnliche Schnittstelle präsentiert, ist das die Zeitüberschreitung, bevor sie fortfährt und den Standardeintrag bootet)

Die BootOrder ist die Reihenfolge, in der die Einträge in der Liste ausprobiert werden

Der Rest der Ausgabe zeigt die tatsächlichen Boot-Einträge

Wir werden später beschreiben, was sie tatsächlich tun ‘Boot-Menü’, in der Reihenfolge, die in BootOrder aufgeführt ist

Auf diesem System würde es also versuchen, den Eintrag namens „opensuse“ zu booten, und wenn dies fehlschlägt, den Eintrag namens „Fedora“, dann „CD/DVD-Laufwerk“ und dann das zweite „Festplatte“

wie es tatsächlich funktioniert – Bootmanager-Einträge

Aber was bedeuten diese Einträge eigentlich? Es gibt tatsächlich eine riesige Auswahl an Möglichkeiten, die einen ziemlich großen Teil der Komplexität der UEFI-Spezifikation ausmachen

Wenn Sie die Spezifikation lesen, gießen Sie sich einen extrem großen Schuss Gin ein und gehen Sie zum Abschnitt EFI_DEVICE_PATH_PROTOCOL, aber beachten Sie, dass dies ein generisches Protokoll ist, das für andere Dinge als das Booten verwendet wird – es ist UEFIs offizielle Methode zur Identifizierung von Geräten für alle Zwecke

wird für Bootmanager-Einträge, aber auch für alle möglichen anderen Zwecke verwendet

Aus offensichtlichen Gründen ist nicht jeder mögliche EFI-Gerätepfad als UEFI-Boot-Manager-Eintrag sinnvoll (Sie werden wahrscheinlich nicht zu weit kommen, wenn Sie versuchen, von Ihrem Videoadapter zu booten)

Aber Sie können sicherlich einen Eintrag haben, der beispielsweise auf einen PXE-Server zeigt, nicht auf eine Festplattenpartition

Die Spezifikation enthält viele Bits, die gültige Startziele ohne Festplatte definieren, die der UEFI-Boot-Manager-Konfiguration hinzugefügt werden können

Betrachten wir für unsere Zwecke jedoch nur ziemlich normale Festplatten, die mit dem System verbunden sind

In diesem Fall können wir drei Arten von Einträgen berücksichtigen, auf die Sie wahrscheinlich stoßen werden.

BIOS-Kompatibilitätsstarteinträge

Boot0000 und Boot0004 sind in diesem Beispiel tatsächlich Einträge im BIOS-Kompatibilitätsmodus, keine nativen UEFI-Einträge

Sie wurden nicht von einer externen Agentur zur UEFI-Boot-Manager-Konfiguration hinzugefügt, sondern von der Firmware selbst generiert – dies ist eine übliche Methode für eine UEFI-Firmware, das Booten mit BIOS-Kompatibilität zu implementieren, indem UEFI-Boot-Manager-Einträge generiert werden, die eine BIOS-Kompatibilität auslösen Booten eines bestimmten Geräts

Wie sie dies dem Benutzer präsentieren, ist eine andere Frage, wie wir später sehen werden

Ob Sie einen dieser Einträge sehen oder nicht, hängt von Ihrer speziellen Firmware und ihrer Konfiguration ab

Jeder dieser Einträge gibt nur einen Namen an – “CD/DVD-Laufwerk”, “Festplatte” – und sagt: “Wenn dieser Eintrag ausgewählt ist, booten Sie diese Festplatte (wobei “diese Festplatte” 3,0,00 für Boot0000 und 2 ist, 0.00 für Boot0004) im BIOS-Kompatibilitätsmodus”.

‘Fallback-Pfad’ UEFI-native Boot-Einträge

Boot0001 ist ein Eintrag (fiktiv und etwas unwahrscheinlich, dient aber der Veranschaulichung), der der Firmware mitteilt, dass sie versuchen soll, von einer bestimmten Festplatte zu booten, und im UEFI-Modus nicht im BIOS-Kompatibilitätsmodus, aber nichts mehr sagt

Es gibt kein bestimmtes Boot-Ziel auf der Festplatte an – es sagt nur, dass die Festplatte gebootet werden soll

Die UEFI-Spezifikation definiert eine Art „Fallback“-Pfad zum Booten dieser Art von Boot-Manager-Eintrag, der im Prinzip ähnlich wie ein BIOS-Laufwerk funktioniert Booten: Es sucht an einem Standardspeicherort nach Bootloader-Code

Die Details sind jedoch unterschiedlich

Was die Firmware tatsächlich tut, wenn sie versucht, auf diese Weise zu booten, ist ziemlich einfach

Die Firmware durchsucht jede EFI-Systempartition auf der Festplatte in der Reihenfolge, in der sie auf der Festplatte vorhanden ist

Innerhalb des ESP wird nach einer Datei mit einem bestimmten Namen und Speicherort gesucht

Auf einem x86-64-PC sucht es nach der Datei \EFI\BOOT\BOOTx64.EFI

Was es tatsächlich sucht, ist \EFI\BOOT\BOOT{Kurzname des Maschinentyps}.EFI – „x64“ ist der „Kurzname des Maschinentyps“ für x86-64-PCs

Die anderen Möglichkeiten sind BOOTIA32.EFI (x86-32), BOOTIA64.EFI (Itanium), BOOTARM.EFI (AArch32 – also 32-Bit-ARM) und BOOTAA64.EFI (AArch64 – also 64-Bit-ARM)

Es führt dann die erste qualifizierte Datei aus, die es findet (offensichtlich muss die Datei in dem ausführbaren Format vorliegen, das in der UEFI-Spezifikation definiert ist)

Dieser Mechanismus ist nicht zum Booten von dauerhaft installierten Betriebssystemen konzipiert

Es ist eher für das Booten von Hotplug-fähigen, geräteunabhängigen Medien wie Live-Images und Betriebssystem-Installationsmedien konzipiert

Und dafür wird es in der Regel verwendet

Wenn Sie sich ein UEFI-fähiges Live- oder Installationsmedium für eine Linux-Distribution oder ein anderes Betriebssystem ansehen, werden Sie feststellen, dass es eine GPT-Partitionstabelle hat und eine FAT-formatierte Partition am oder nahe dem Start des Geräts mit der GPT-Partition enthält Typ, der sie als EFI-Systempartition identifiziert

Innerhalb dieser Partition befindet sich ein \EFI\BOOT-Verzeichnis mit mindestens einer der oben genannten speziell benannten Dateien

See also  Best doodle jump 1001 spiele Update New

Wenn Sie ein Fedora-Live- oder Installationsmedium im nativen UEFI-Modus booten, wird dieser Mechanismus verwendet

Die BOOTx64.EFI-Datei (oder was auch immer) erledigt den Rest des Startvorgangs von dort aus und startet das eigentliche Betriebssystem, das auf dem Medium enthalten ist

Vollständige UEFI-native Starteinträge

Boot0002 und Boot0003 sind „typische“ Einträge für Betriebssysteme, die dauerhaft auf permanenten Speichergeräten installiert sind

Diese Einträge zeigen uns die volle Leistungsfähigkeit des UEFI-Boot-Mechanismus, indem sie nicht nur sagen „von dieser Festplatte booten“, sondern „diesen spezifischen Bootloader an diesem bestimmten Ort auf dieser bestimmten Festplatte booten“, indem sie all die „Grundlagen“ verwenden, über die wir oben gesprochen haben.

Boot0002 ist ein Boot-Eintrag, der von einer UEFI-nativen Fedora-Installation erstellt wird

Boot0003 ist ein Boot-Eintrag, der von einer UEFI-nativen OpenSUSE-Installation erstellt wird

Wie Sie vielleicht erkennen können, sagen sie nur “diese Datei von dieser Partition laden”

Die Partition ist das HD(1.800,61800,6d98f360-cb3e-4727-8fed-5ce0c040365d)-Bit: das bezieht sich auf eine bestimmte Partition (unter Verwendung des EFI_DEVICE_PATH_PROTOCOL, das ich wirklich nicht versuchen werde, im Detail zu erklären – du ziehst es an müssen es nicht unbedingt wissen, wenn Sie mit dem Bootmanager über die Firmware-Schnittstelle und efibootmgr interagieren)

Die Datei ist das File(\EFI\opensuse\grubx64.efi)-Bit: das bedeutet einfach “Lade die Datei an diesem Ort auf der Partition, die wir gerade beschrieben haben”

Die fragliche Partition ist aufgrund der obigen Überlegungen fast immer eine Partition, die als EFI-Systempartition qualifiziert ist: Auf diese Art von Partition können wir vertrauen, dass die Firmware darauf zugreifen kann

Dies ist der Mechanismus, den die UEFI-Spezifikation für den Betrieb bereitstellt Systeme zum Booten verfügbar machen: Das Betriebssystem soll einen Bootloader installieren, der den OS-Kernel usw

auf eine EFI-Systempartition lädt, und der UEFI-Bootmanager-Konfiguration einen Eintrag mit einem Namen hinzufügen – offensichtlich wird dies normalerweise der Fall sein aus dem Namen des Betriebssystems abgeleitet werden – und dem Speicherort des Bootloaders (im ausführbaren EFI-Format), der zum Laden dieses Betriebssystems vorgesehen ist

Linux-Distributionen verwenden das efibootmgr-Tool, um mit dem UEFI-Boot-Manager umzugehen

Was eine Linux-Distribution tatsächlich tut, was das Bootloading betrifft, wenn Sie eine UEFI-native Installation durchführen, ist wirklich ziemlich einfach: Sie erstellt eine EFI-Systempartition, falls noch keine vorhanden ist, und installiert einen EFI-Bootloader mit einer entsprechenden Konfiguration – oft grub2-efi, aber es gibt noch andere – in einen korrekten Pfad in der EFI-Systempartition und ruft efibootmgr auf, um einen entsprechend benannten UEFI-Boot-Manager-Eintrag hinzuzufügen, der auf seinen Bootloader zeigt

Die meisten Distributionen verwenden eine vorhandene EFI-Systempartition, falls vorhanden, obwohl es durchaus zulässig ist, eine neue zu erstellen und diese stattdessen zu verwenden: Wie wir festgestellt haben, ist UEFI eine freizügige Spezifikation, und wenn Sie dem Design logisch folgen, gibt es wirklich kein Problem, wenn Sie so viele EFI-Systempartitionen haben, wie Sie möchten

Konfigurieren des Startvorgangs (der Firmware-Benutzeroberfläche)

Das Obige beschreibt den grundlegenden Mechanismus, den die UEFI-Spezifikation definiert, der den UEFI-Startvorgang verwaltet

Es ist wichtig zu wissen, dass Ihre Firmware-Benutzeroberfläche diesen Mechanismus möglicherweise nicht sehr klar darstellt

Leider verzichtet die Spezifikation absichtlich darauf, zu definieren, wie der Bootvorgang dem Benutzer dargestellt werden soll oder wie der Benutzer ihn konfigurieren darf, und das bedeutet – da wir es mit Firmware-Ingenieuren zu tun haben – dass jede Firmware es anders macht , und einige tun es wahnsinnig

Viele Firmwares haben ziemlich vernünftige Schnittstellen für die Boot-Konfiguration

Ein gutes Firmware-Design zeigt Ihnen zumindest die Startreihenfolge mit einer angemessenen Darstellung der Einträge darauf und lässt Sie Einträge hinzufügen oder entfernen, die Reihenfolge ändern oder die Reihenfolge für einen bestimmten Start überschreiben (indem Sie sie nur dafür ändern booten, oder die Firmware direkt anweisen, einen bestimmten Menüeintrag zu booten, oder Ihnen sogar die Möglichkeit geben, einfach “Boot this disk” zu sagen, entweder im BIOS-Kompatibilitätsmodus oder im UEFI-‘Fallback’-Modus – meine Firmware macht das)

Eine solche Schnittstelle zeigt oft „vollständige“ UEFI-native Boot-Einträge (wie die Fedora- und openSUSE-Beispiele, die wir zuvor gesehen haben) nur mit ihrem Namen; Sie müssen die Ausgabe von efibootmgr -v untersuchen, um genau zu wissen, was diese Einträge tatsächlich versuchen und tun, wenn sie aufgerufen werden.

Einige Firmwares versuchen, die Konfiguration zu abstrahieren und zu vereinfachen, und können dabei gute oder schlechte Arbeit leisten

Wenn Sie beispielsweise die Option haben, den BIOS-Kompatibilitätsmodus zu aktivieren oder zu deaktivieren, konfiguriert er wahrscheinlich, ob die Firmware BIOS-Kompatibilitätseinträge für angeschlossene Laufwerke zur UEFI-Boot-Manager-Konfiguration hinzufügt oder nicht

Wenn Sie eine Option zum „Aktivieren oder Deaktivieren“ des nativen UEFI-Bootens haben, passiert wahrscheinlich wirklich, wenn Sie „deaktivieren“, dass die Firmware die Konfiguration des UEFI-Boot-Managers ändert, um alle UEFI-nativen Einträge aus der BootOrder herauszulassen

Der Schlüssel Denken Sie daran, dass jede Konfigurationsoption in Ihrer Firmware-Schnittstelle, die mit dem Booten zu tun hat, hinter den Kulissen das Verhalten des UEFI-Boot-Managers konfiguriert

Wenn Sie all die Dinge verstehen, die wir oben besprochen haben, finden Sie es vielleicht einfacher herauszufinden, was wirklich passiert, wenn Sie an den Knöpfen drehen, die Ihre Firmware-Schnittstelle freilegt

Sie werden sich erinnern, dass Sie es in der BIOS-Welt nicht immer tun Stellen Sie fest, dass Systeme so konfiguriert sind, dass sie versuchen, von Wechsellaufwerken (CD, USB) zu booten, bevor sie von permanenten Laufwerken booten

Manche sind es, manche nicht

Einige werden es mit CD vor den Festplatten versuchen, aber nicht mit USB

Die Leute haben sich ziemlich daran gewöhnt, die BIOS-Konfiguration überprüfen zu müssen, um sicherzustellen, dass die Startreihenfolge “korrekt” ist, wenn sie versuchen, ein neues Betriebssystem zu installieren

Dies gilt auch für die UEFI-Welt, aber wegen der zusätzlichen Flexibilität/Komplexität des UEFI Boot-Manager-Mechanismus kann er ungewohnt und beängstigend aussehen Sie möchten beispielsweise Fedora installieren – Sie müssen dies als Standard für Ihre Firmware verwenden, oder Sie müssen der Firmware dies mitteilen können

Abhängig von der Schnittstelle Ihrer Firmware finden Sie möglicherweise einen „Menüeintrag“ für jedes angeschlossene Wechselgerät und Sie müssen nur die Startreihenfolge anpassen, um es an den Anfang der Liste zu setzen, oder Sie stellen möglicherweise fest, dass es den Mechanismus dazu gibt Fordern Sie direkt „UEFI-Fallback-Boot von dieser bestimmten Festplatte“ an, oder Sie stellen möglicherweise fest, dass die Firmware versucht, die Konfiguration irgendwie zu abstrahieren

Wir wissen es einfach nicht, und das macht das Schreiben von Anweisungen dafür ziemlich schwierig

Aber jetzt, da Sie im Großen und Ganzen verstehen, wie die Dinge hinter den Kulissen funktionieren, finden Sie es möglicherweise einfacher, die Darstellung Ihrer Firmware-Benutzeroberfläche zu verstehen

Konfigurieren des Startvorgangs (von einem Betriebssystem aus)

Wie wir oben angemerkt haben, können Sie anders als in der BIOS-Welt den UEFI-Startvorgang tatsächlich auf Betriebssystemebene konfigurieren

Wenn Sie eine verrückte Firmware haben, müssen Sie dies möglicherweise tun, um das zu erreichen, was Sie wollen von anderen Sachen mit ihm auch

Sie können die Startreihenfolge ändern

Sie können es anweisen, beim nächsten Start einen bestimmten Eintrag in der Liste zu booten, anstatt die BootOrder-Liste zu verwenden (wenn Sie oder ein anderes Tool dies so konfiguriert haben, enthält Ihre efibootmgr -v-Ausgabe ein BootNext-Element, das angibt, welcher Menüeintrag wird beim nächsten Booten geladen)

Es gibt Tools für Windows, die diese Dinge auch von Windows aus erledigen können

Wenn Sie also wirklich Schwierigkeiten haben, das zu tun, was Sie mit der UEFI-Boot-Konfiguration von Ihrer Firmware-Schnittstelle aus tun möchten, aber Sie können ein natives UEFI-Betriebssystem booten, sollten Sie Ihre Boot-Konfiguration in Betracht ziehen dieses Betriebssystem und nicht von der Firmware-Benutzeroberfläche

Um es noch einmal zusammenzufassen:

Ihre UEFI-Firmware enthält so etwas wie das, was Sie sich als Boot-Menü vorstellen für Details).

, von jedem UEFI-nativen Start eines Linux-Betriebssystems, und ändern Sie auch seine Konfiguration mit (Einzelheiten finden Sie auf der Manpage)

Dieses „Boot-Menü“ kann Einträge enthalten, die besagen „diese Festplatte im BIOS-Kompatibilitätsmodus booten“, „diese Festplatte im nativen UEFI-Modus über den Fallback-Pfad booten“ (wobei die beschriebene Methode „Suche nach BOOT(etwas).EFI“ verwendet wird)

oben) oder „Booten Sie die ausführbare Datei im spezifischen EFI-Format an diesem bestimmten Ort (fast immer auf einer EFI-Systempartition)

ihre eigene zu einer EFI-Systempartition, fügen Sie Einträge zu diesem “Startmenü” hinzu, die auf sich selbst verweisen, und vermeiden Sie den Versuch, die Kontrolle über das Booten von irgendetwas anderem zu übernehmen

Ihre Firmware-Benutzeroberfläche hat freie Hand, um diesen Mechanismus für Sie auf beliebige Weise darzustellen es will, und es kann dies gut oder schlecht tun.

Installieren von Betriebssystemen auf UEFI-basierten Computern

Werfen wir einen kurzen Blick auf einige spezifische Konsequenzen des oben Gesagten, die sich auf die Installation von Betriebssystemen auf UEFI-Computern beziehen

UEFI-natives und BIOS-kompatibles Booten

Hier ist eine sehr, sehr einfache, die die Leute manchmal vermissen:

Wenn Sie das Installationsmedium im UEFI-nativen Modus booten, führt es eine UEFI-native Installation des Betriebssystems durch: Es wird versuchen, einen Bootloader im EFI-Format auf eine EFI-Systempartition zu schreiben und einen Eintrag zum UEFI hinzuzufügen Boot-Manager ‘Boot-Menü’, das diesen Bootloader lädt

Wenn Sie das Installationsmedium im Modus ‘BIOS-Kompatibilität’ booten, wird es eine BIOS-kompatible Installation des Betriebssystems durchführen: Es wird versuchen, einen Bootloader vom Typ MBR in die Magie zu schreiben MBR-Speicherplatz auf einer Festplatte

Dies gilt (mit einer kleinen Einschränkung, die ich vorerst überschreiben werde) für alle Betriebssysteme, die mir bekannt sind

Daher möchten Sie wahrscheinlich sicherstellen, dass Sie verstehen, wie Sie in Ihrer Firmware ein Wechselgerät im UEFI-nativen Modus und im BIOS-Kompatibilitätsmodus starten können, und sicherstellen, dass Sie das auswählen, das Sie tatsächlich möchten für Ihre Installation zu verwenden.

Sie können wirklich keine vollständig erfolgreiche UEFI-native Installation eines Betriebssystems durchführen, wenn Sie sein Installationsmedium im BIOS-Kompatibilitätsmodus booten, da das Installationsprogramm den UEFI-Boot-Manager nicht konfigurieren kann (dies ist nur möglich wenn UEFI-nativ gebootet wird).

Es ist theoretisch möglich, dass ein Betriebssystem-Installer das Betriebssystem im BIOS-Stil installiert – das heißt, einen Bootloader in den MBR einer Festplatte schreibt – nachdem es im UEFI-nativen Modus gebootet wurde, aber die meisten von ihnen haben es geschafft

Tun Sie dies nicht, und das ist wahrscheinlich heikel

Herausfinden, in welchem ​​Modus Sie gebootet werden

Es ist möglich, dass Sie mit Ihrem Betriebssystem-Installationsprogramm gebootet werden und nicht sicher sind, ob es tatsächlich im UEFI-nativen Modus oder im BIOS-Kompatibilität gebootet wird m oder

Keine Panik! Es ist ziemlich einfach herauszufinden, welche, auf ein paar verschiedene Arten

Eine der einfachsten ist es, einfach zu versuchen, mit dem UEFI-Boot-Manager zu sprechen

Wenn Sie ein Linux-Installationsprogramm oder eine Umgebung gebootet haben und Sie zu einer Shell gelangen können (z

B

Strg-Alt-F2 im Fedora-Installationsprogramm), führen Sie efibootmgr -v aus

Wenn Sie im nativen UEFI-Modus gebootet werden, erhalten Sie Ihre UEFI-Boot-Manager-Konfiguration, wie oben gezeigt

Wenn Sie im BIOS-Kompatibilitätsmodus gebootet werden, erhalten Sie etwa Folgendes:

Fatal: Konnte weder sysfs- noch procfs-Verzeichnisse für den Zugriff auf EFI-Variablen öffnen

Probieren Sie „modprobe efivars“ als root aus

Wenn Sie ein anderes Betriebssystem gebootet haben, können Sie versuchen, ein natives Dienstprogramm dieses Betriebssystems auszuführen, das versucht, mit dem UEFI-Boot-Manager zu kommunizieren, und sehen, ob Sie sensible Ausgaben oder ähnliches erhalten von Fehlern

Oder Sie können die Systemprotokolle untersuchen und nach „efi“ und/oder „uefi“ suchen, und Sie werden wahrscheinlich eine Art Hinweis finden.

Aktivieren des nativen UEFI-Starts

Um im UEFI-nativen Modus bootfähig zu sein, muss Ihr Betriebssystem-Installationsmedium offensichtlich alle diese Dinge erfüllen, die wir gerade beschrieben haben: Es muss eine GPT-Partitionstabelle und eine EFI-Systempartition mit einem Bootloader im richtigen „Fallback“-Pfad haben – \EFI\BOOT\BOOTx64.EFI (oder die anderen Namen für die anderen Plattformen)

Wenn Sie Probleme haben, einen nativen UEFI-Start Ihres Installationsmediums durchzuführen, und nicht herausfinden können, warum, überprüfen Sie, ob dies tatsächlich der Fall ist

Insbesondere wenn Sie das livecd-iso-to-disk-Tool verwenden, um ein Fedora-Image auf einen USB-Stick zu schreiben, müssen Sie den Parameter –efi übergeben, um den Stick so zu konfigurieren, dass er UEFI-bootfähig ist

Wenn Ihre Firmware das Booten von einem Wechselmedium im BIOS-Kompatibilitätsmodus sehr schwierig zu machen scheint, Sie das aber wirklich wollen, gibt es einen praktischen Trick, den Sie anwenden können: Machen Sie das Medium einfach überhaupt nicht UEFI-nativ bootfähig

Sie können dies ziemlich einfach tun, indem Sie einfach alle EFI-Systempartitionen löschen

(Alternativ, wenn Sie livecd-iso-to-disk verwenden, um einen USB-Stick von einem Fedora-Image zu erstellen, können Sie einfach den Parameter –efi weglassen und es wird nicht UEFI-bootfähig sein)

Wenn sich Ihre Firmware zu diesem Zeitpunkt weigert, sie im BIOS-Kompatibilitätsmodus zu starten, beginnen Sie, Ihren Firmware-Anbieter zu beschimpfen (falls Sie dies noch nicht getan haben)

Festplattenformate (MBR vs

GPT)

Hier ist eine weitere sehr wichtige Überlegung:

Wenn Sie eine Installation vom Typ „BIOS-Kompatibilität“ durchführen möchten, möchten Sie wahrscheinlich auf einer MBR-formatierten Festplatte installieren

Wenn Sie eine UEFI-native Installation durchführen möchten, möchten Sie wahrscheinlich auf einer GPT-formatierten Festplatte installieren

Um das Leben komplizierter zu machen, können viele Firmwares im BIOS-Stil von einer GPT-formatierten Festplatte booten

UEFI-Firmwares sind tatsächlich technisch erforderlich, um im UEFI-Stil von einer MBR-formatierten Festplatte booten zu können (obwohl wir nicht besonders zuversichtlich sind, dass sie das wirklich alle können)

Aber das sollten Sie wirklich nach Möglichkeit vermeiden

Diese Überlegung ist ziemlich wichtig, da sie einige Leute ins Stolpern bringt

Beispielsweise ist es eine schlechte Idee, ein Betriebssystem-Installationsprogramm im nativen UEFI-Modus zu starten und dann zu versuchen, auf einer MBR-formatierten Festplatte zu installieren, ohne sie neu zu formatieren

Das wird sehr wahrscheinlich scheitern

Die meisten modernen Betriebssystem-Installationsprogramme formatieren die Festplatte automatisch im richtigen Format neu, wenn Sie ihnen erlauben, sie vollständig zu löschen, aber wenn Sie versuchen, dem Installationsprogramm zu sagen: „Führen Sie eine UEFI-native Installation auf dieser MBR-formatierten Festplatte durch und formatieren Sie sie nicht neu, da dies der Fall ist Daten darauf, die mir wichtig sind’, wird es sehr wahrscheinlich fehlschlagen, obwohl diese Konfiguration technisch in der UEFI-Spezifikation abgedeckt ist

Insbesondere Windows und Fedora verbieten diese Konfiguration zumindest ausdrücklich

Überprüfen des Festplattenformats

Sie können das parted-Dienstprogramm verwenden, um das Format einer bestimmten Festplatte zu überprüfen:

[[email protected] Downloads]$ sudo parted /dev/sda GNU Parted 3.1 Verwendung von /dev/sda Willkommen bei GNU Parted! Geben Sie „Hilfe“ ein, um eine Liste mit Befehlen anzuzeigen

(parted) p Modell: ATA C300-CTFDDAC128M (scsi) Festplatte /dev/sda: 128GB Sektorgröße (logisch/physisch): 512B/512B Partitionstabelle: msdos Festplatten-Flags: Nummer Start Ende Größe Typ Dateisystem-Flags 1 1049kB 525MB 524MB primäres ext4 Boot 2 525 MB 128 GB 128 GB primäres lvm (geteilt)

Siehe diese Partitionstabelle: msdos ? Dies ist eine MBR/MS-DOS-formatierte Diskette

Wenn es GPT-formatiert wäre, würde das heißen gpt

Sie können die Festplatte mit dem anderen Partitionstabellentyp neu formatieren, indem Sie mklabel gpt oder mklabel msdos innerhalb von parted ausführen

Dadurch wird der Inhalt der Festplatte zerstört

Wenn Sie bei den meisten Betriebssystem-Installationsprogrammen eine Festplattenkonfiguration auswählen, die den gesamten Inhalt der Zielfestplatte wegbläst, formatiert das Installationsprogramm sie automatisch mit der am besten geeigneten Konfiguration für den Installationstyp, den Sie verwenden

Wenn Sie jedoch eine vorhandene Festplatte verwenden möchten, ohne sie neu zu formatieren, müssen Sie überprüfen, wie sie formatiert ist, und dies berücksichtigen

Handhabung der EFI-Systempartition bei manueller Partitionierung

Ich kann hier nur maßgebliche Ratschläge für Fedora geben, aber das Wesentliche kann für andere Distributionen / Betriebssysteme nützlich sein.

Wenn Sie Fedora erlauben, die Partitionierung für Sie zu übernehmen, wenn Sie eine UEFI-native Installation durchführen – und Sie eine GPT-formatierte Festplatte verwenden, oder zulassen, dass die Festplatte neu formatiert wird (indem alle vorhandenen Partitionen gelöscht werden) – wird es die EFI-Systempartitionen für Sie erledigen.

Wenn Sie jedoch eine benutzerdefinierte Partitionierung verwenden, wird erwartet, dass Sie eine EFI-Systempartition für das Installationsprogramm bereitstellen

Wenn Sie dies nicht tun, beschwert sich das Installationsprogramm (mit einer etwas verwirrenden Fehlermeldung) und weigert sich, die Installation zu starten

Wenn Sie also eine UEFI-native Installation durchführen und eine benutzerdefinierte Partitionierung verwenden, müssen Sie dies sicherstellen eine Partition des Typs ‘EFI-Systempartition’ wird unter /boot/efi gemountet – hier erwartet Fedora, die verwendete EFI-Systempartition zu finden

Wenn auf dem System eine vorhandene EFI-Systempartition vorhanden ist, setzen Sie einfach ihren Einhängepunkt auf /boot/efi

Wenn noch keine EFI-Systempartition vorhanden ist, erstellen Sie eine Partition, setzen Sie ihren Typ auf EFI-Systempartition, machen Sie sie mindestens 200 MB groß (500 MB sind gut) und setzen Sie ihren Einhängepunkt auf /boot/efi.

Ein konkretes Beispiel

Um das Obige zusammenzufassen: Wenn Sie ein System mit Windows 8 oder höher gekauft haben, haben Sie mit ziemlicher Sicherheit eine UEFI-native Installation von Windows auf einer GPT-formatierten Festplatte

Dies bedeutet, dass Sie, wenn Sie neben dieser Windows-Installation ein weiteres Betriebssystem installieren möchten, mit ziemlicher Sicherheit eine UEFI-native Installation Ihres anderen Betriebssystems durchführen möchten

Wenn Sie diesen ganzen UEFI-Unsinn nicht mögen und in die gute alte Welt zurückkehren möchten, mit der Sie vertraut sind, müssen Sie, fürchte ich, die UEFI-native Windows-Installation wegblasen, und es wäre eine gute Idee, die Festplatte auf MBR neu zu formatieren

See also  Top outlook geburtstagskalender New

Auswirkungen und Komplikationen

So funktioniert also das UEFI-Booten, zumindest eine vernünftige Annäherung

Wenn ich es so beschreibe, macht es fast alles Sinn, oder?

Allerdings ist nicht alles süß und leicht

Es gibt Probleme

Es gibt immer. .

Aufmerksame Leser haben vielleicht bemerkt, dass ich über die UEFI-Spezifikation gesprochen habe, die einen Mechanismus bereitstellt

Das ist richtig und wichtig

Da die UEFI-Spezifikation eine Art “breiter Konsens” ist, besteht einer ihrer größten Mängel (aus einer bestimmten Perspektive betrachtet) darin, dass sie bei weitem nicht präskriptiv genug ist

Wenn Sie die UEFI-Spezifikation kritisch lesen, besteht ihr grundlegender Ansatz darin, zu definieren eine Reihe von Funktionen, die UEFI-konforme Firmwares unterstützen müssen

Was es überhaupt nicht macht, ist, dass Dinge unbedingt auf eine bestimmte Weise oder nicht auf eine bestimmte Weise ausgeführt werden müssen

Also: Die Spezifikation besagt, dass eine System-Firmware all das tun muss, was ich beschrieben habe oben, um als UEFI-konforme Firmware betrachtet zu werden

Die Spezifikation spricht jedoch überhaupt nicht darüber, was Betriebssysteme tun “sollten” oder “müssen”, und sie sagt nicht, dass Firmwares nicht unterstützen dürfen (oder niemand erwartet, dass sie sie unterstützen, oder was auch immer)

..überhaupt nichts

Wenn Sie also eine UEFI-Firmware erstellen, müssen Sie GPT-formatierte Festplatten und FAT-formatierte EFI-Systempartitionen unterstützen, und Sie müssen UEFI-Boot-Manager-Einträge im Standardformat lesen, und Sie müssen dies und das tun und das andere – aber Sie können auch jeden anderen Mist machen, den Sie mögen

Es ist ziemlich einfach, bestimmte Implikationen aus der Spezifikation zu lesen – sie richtet sorgfältig diesen netten Mechanismus für die Handhabung der Auswahl des Betriebssystems (oder eines anderen “bootfähigen Dings”) auf Firmware-Ebene ein, zum Beispiel mit der klaren Implikation “Hey, es wäre großartig, wenn alle Betriebssysteme für diesen Mechanismus geschrieben würden”

Aber die UEFI-Spezifikation erfordert dies nicht, und auch keine andere weithin respektierte Spezifikation.

Was also in der realen Welt passiert, ist, dass wir mit wirklich dummem Mist enden

Apple beispielsweise liefert zumindest einige Macs mit ihren Bootloadern in einer HFS+-Partition aus

Die Spezifikation besagt, dass eine UEFI-kompatible Firmware UEFI FAT-Partitionen mit dem spezifischen GPT-Partitionstyp unterstützen muss, der sie als „EFI-Systempartition“ identifiziert, aber es heißt nicht, dass die Firmware nicht auch einen anderen Dateisystemtyp erkennen und laden kann a Bootloader davon

(Ob Sie eine solche Partition als „EFI-Systempartition“ betrachten oder nicht, ist ein interessantes philosophisches Rätsel, aber lassen Sie uns das erst einmal durchgehen)

Das EFI-Systempartitionsformat, das die Spezifikation so sehr bemüht, zu definieren, aber Apple ist Apple und wir können keine schönen Dinge haben, also hat Apple direkt weitergemacht und Firmwares geschrieben, die auch Code von HFS+-Partitionen lesen und laden können, und jetzt alle anderen muss sich damit auseinandersetzen oder Macs sagen, dass er gehen und sich entbeinen lassen soll

Apple geht beim Design des Boot-Prozesses auch ziemlich weit über die Spezifikation hinaus, und wenn Sie möchten, dass Ihr alternatives Betriebssystem im grafischen Boot-Menü mit einem netten Symbol und anderen Dingen angezeigt wird, müssen Sie mehr tun, als die UEFI-Spezifikation vorschlägt.

Es gibt verschiedene unglaublich ähnliche ärgerliche Eckfälle, auf die wir gestoßen sind, aber lassen Sie uns jetzt nicht auf sie alle eingehen

Dieser Beitrag ist lang genug

Wie wir bereits angemerkt haben, stellt die Spezifikation keine Anforderungen, wie der Mechanismus dem Benutzer dargestellt werden soll

Wenn also ein paar Softwarefirmen Betriebssysteme schreiben, die sich gemäß den Konventionen „nett“ verhalten, ist die Spezifikation eindeutig darauf ausgelegt, EFI-Bootloader zu unterstützen und zu installieren und EFI-Boot-Manager-Einträge mit schönen, klaren Namen zu definieren – wie, oh sagen wir, „Fedora“

und “Windows” – sie verlassen sich implizit auf die Firmware, um dem Benutzer dann eine Art vernünftige Schnittstelle irgendwo relativ auffindbar zu geben, die es ihm ermöglicht, “Windows” oder “Fedora” zu booten

Je mehr Firmwares dies nicht gut machen, desto weniger werden OS-Ingenieure bereit sein, sich auf die “richtigen” Konventionen zu verlassen, und desto wahrscheinlicher werden sie damit beginnen, hässliche Hacks über der Firmware-Ebene nachzubauen Fairerweise könnten wir auf Betriebssystemebene etwas mehr tun

Wir könnten all diese netten efibootmgr-Fähigkeiten etwas offensichtlicher präsentieren – wir können zum Beispiel die Funktion “BootOrder beim nächsten Start nicht beachten, sondern stattdessen diese booten” verwenden und “Reboot to Windows” als Option haben

Es wäre nett, wenn jemand versuchen würde, all diese Funktionen an einem offensichtlicheren Ort als efibootmgr bereitzustellen

Windows 8-Systeme verwenden dies bis zu einem gewissen Grad – Sie können Ihr System beispielsweise über die Windows 8-Einstellungsmenüs mit der Firmware-Benutzeroberfläche neu starten

Aber trotzdem.

All das ist wirklich unglaublich frustrierend, weil UEFI so nah dran ist, die Dinge wirklich viel besser zu machen

Der BIOS-Ansatz bietet keinerlei Konvention oder Standard für Multibooting – er muss vollständig über der Firmware-Ebene gehandhabt werden

Wir (die Branche) hätten uns eine Art Konvention für den Umgang mit Multiboot einfallen lassen können, aber wir haben es nie getan, also wurde es einfach zu einem epischen Scheitern über mehrere Jahrzehnte, bei dem jedes Betriebssystem seinen eigenen Ansatz entwickelte und viele Leute ihren schrieben eigene Bootloader, die versuchten, alle Betriebssysteme zu subsumieren, und alle Betriebssysteme und unabhängige Bootloader kämpften munter wie Katzen im Sack

Ich meine, Pre-UEFI-Multibooting ist so ein Clusterf**k, dass es sich nicht einmal lohnt, darauf einzugehen, es ist per Definition seit Sonntag sechzehn Mal kaputt.

Wenn UEFI – oder eine darauf aufbauende Spezifikation – gerade angewiesen worden wäre, dass jeder die Konventionen befolgt, die UEFI sorgfältig festlegt, und vorgeschrieben hätte, dass Firmwares eine sensible Benutzeroberfläche bieten, wäre der Sieg episch gewesen

Aber das tut es nicht, also ist es durchaus möglich, dass die Dinge in einer UEFI-Welt noch schlimmer sein werden als in der BIOS-Welt

Wenn viele weitere Firmwares auftauchen, die keine gute Benutzeroberfläche für den UEFI-Boot-Manager-Mechanismus darstellen, könnte es passieren, dass Betriebssystemanbieter den UEFI-Boot-Manager-Mechanismus aufgeben (oder sich entscheiden, ihn und Alternativen zu unterstützen, weil die Wahl!) und Erfinden Sie einfach den ganzen gottverdammten Albtraum des BIOS-Multibooting auf UEFI neu – und wir alle müssen uns mit all dem auseinandersetzen, plus der zusätzlichen Komplikation der UEFI-Boot-Manager-Schicht

Sie werden mehrere Bootloader haben, die darum kämpfen, mehrere Betriebssysteme zu laden, alles zusätzlich zum gesamten UEFI-Boot-Manager-Mechanismus, der nur eine ganze Reihe anderer Variablen in die Gleichung wirft

Dies ist keine Aussicht, die jemandem in den Sinn kommt, der es musste denke mit Freude daran

Dennoch ist es wichtig zu erkennen, dass die Sünden des UEFI in diesem Bereich Unterlassungssünden sind – sie sind keine Tatsünden, und sie sind nicht wirklich das Ergebnis böser Absichten von irgendjemandem

Die Entität, auf die Sie wirklich wütend sein sollten, wenn Sie eine idiotische Systemfirmware haben, die Ihnen keinen guten Zugriff auf den UEFI-Boot-Manager-Mechanismus gibt, ist nicht das UEFI-Forum oder Microsoft, und es ist sicherlich nicht Fedora und noch sicherer ist es nicht nicht ich 😉

Die Entität, auf die Sie wütend sein sollten, ist Ihr System-/Motherboard-Hersteller und die gottverdammten Inkompetenten, die sie angeheuert haben, um die Firmware zu schreiben, denn die UEFI-Spezifikation macht es jedem verdammt klar, der zwei Gehirnzellen aneinander reiben muss, dass es eine sehr gute Idee wäre um dem UEFI-Boot-Manager eine Art nützliche Benutzeroberfläche bereitzustellen, und jede Firmware, die dies nicht tut, ist per Definition Mistcode

Ja, das UEFI-Forum hätte erkennen müssen, dass Firmware-Ingenieure sich nicht aus einer gottverdammten Papiertüte herauscodieren können, und es ihnen einfach befohlen, aber dennoch sind es letztendlich die Firmware-Ingenieure, die an der nächsten Wand aufgereiht werden sollten

.Warte, wir können das vereinfachen

“Jede Firmware ist Mistcode”

Normalerweise ziemlich genau

Sicherer Startvorgang

Jetzt kommen wir also endlich zu Secure Boot

Secure Boot ist keine Zauberei

Es ist nicht kompliziert

OK, das ist eine Lüge, es ist unglaublich kompliziert, aber die Theorie ist nicht sehr kompliziert

Und nein, Secure Boot selbst ist nicht böse

Ich bin völlig zufrieden damit, dies als Tatsache zu bezeichnen, und Sie sollten es auch sein, es sei denn, Sie denken, dass GPG böse ist

Secure Boot ist in Kapitel 28 der UEFI-Spezifikation definiert (jedenfalls 2.4a)

Es ist eigentlich ein ziemlich cleverer Mechanismus

Aber was es tut, lässt sich sehr, sehr einfach beschreiben

Es besagt, dass die Firmware eine Reihe von Signaturen enthalten und sich weigern kann, eine ausführbare EFI-Datei auszuführen, die nicht mit einer dieser Signaturen signiert ist

Das war’s

Nun, nein, das ist es wirklich nicht, aber das ist eine halbwegs akzeptable Vereinfachung

Sicherheit ist schwierig, daher gibt es bei der Implementierung einer wirklich sicheren Bootchain mit Secure Boot alle möglichen wackeligen Teile, und mjg59 kann Ihnen alles darüber erzählen, oder Sie können einen weiteren großen Schuss Gin einschenken und das gesamte Kapitel 28 lesen

Aber das war’s die Grundidee

Die Verwendung von Public-Key-Kryptographie zur Überprüfung der Integrität von etwas ist kaum ein radikales oder böses Konzept

So ziemlich alle Linux-Distributionen hängen davon ab – wir signieren unsere Pakete und lassen unsere Paketmanager AWOOGA AWOOGA gehen, wenn Sie versuchen, ein Paket zu installieren, das nicht mit einem unserer Schlüssel signiert ist

Das sind nicht wir, die böse sind, und ich glaube nicht, dass irgendjemand jemals einem Betriebssystem vorgeworfen hat, böse zu sein, weil es kryptografische Signaturen mit öffentlichen Schlüsseln verwendet hat, um auf diese Weise Vertrauen aufzubauen

Secure Boot ist buchstäblich genau der gleiche, weithin akzeptierte Mechanismus, der auf die Boot-Kette angewendet wird

Doch weil ein Haufen Journalisten wild am falschen Ende des Stocks gegriffen hat, wird es weithin als etwas böser als Hitler angesehen.

Secure Boot, wie in der UEFI-Spezifikation definiert, sagt überhaupt nichts darüber aus, welchen Schlüsseln die Firmware vertrauen sollte oder woher sie kommen sollten

Ich werde nicht auf alle gottverdammten Details eingehen, weil es verdummend langweilig wird und dieser Beitrag schon zu lang ist

Aber die Zusammenfassung ist, dass es in der Spezifikation ausschließlich darum geht, einen Mechanismus für die kryptografische Überprüfung einer Boot-Kette zu definieren

Es berücksichtigt nicht einmal irgendwelche ekligen Fragen zur Politik, um dies zu tun

Es tut nichts Böses

Es ist so flexibel wie vernünftigerweise möglich und sorgt dafür, dass alle beteiligten Mechanismen auf mehreren Ebenen konfigurierbar sind

Das Wort „Microsoft“ wird nicht erwähnt

Es ist in keiner Weise eine geheime Agenda für Microsofts Weltherrschaft

Wenn Sie das zumindest bezweifeln, gehen Sie und lesen Sie es

Ich habe Ihnen alle notwendigen Hinweise gegeben

Mir fällt buchstäblich kein einziger legitimer Grund ein, warum irgendjemand über die Idee verärgert sein sollte: “Hey, es wäre nett, wenn es in dieser Firmware-Spezifikation einen Mechanismus zur optionalen kryptografischen Überprüfung des Bootloader-Codes gäbe”

Keiner

Nicht eins

Secure Boot in der realen Welt

Die meiste Unzufriedenheit über Secure Boot bezieht sich nicht wirklich auf den Mechanismus von Secure Boot – ob die Leute, die diese Unzufriedenheit zum Ausdruck bringen, dies glauben oder nicht – sondern von bestimmten Implementierungen von Secure Boot in der realen Welt

Das einzige, was uns wirklich interessiert, ist Secure Starten Sie so, wie es auf PCs implementiert ist, die mit Microsoft Windows 8 oder höher vorinstalliert geliefert werden

Microsoft hat diese Dinge, die als Anforderungen für die Windows-Hardwarezertifizierung bezeichnet werden

Da sind sie

Sie sind nicht Top Secret, Eyes Only, You Will Be Fed To Bill Gates’ Sharks After Reading – sie sind direkt im Internet für jedermann lesbar

auf Ihren Computern installieren und ein nettes „beruhigendes“ ‘Microsoft Approved!’ Aufkleber oder was auch immer auf dem Gehäuse, müssen Sie diese Anforderungen erfüllen

Das ist die ganze Macht, die sie haben: Sie sind eigentlich kein Teil des Rechts der Vereinigten Staaten oder eines anderen Landes, was auch immer manche Leute zu glauben scheinen

Bill Gates kann Sie nicht an seine Haie verfüttern, wenn Sie einen PC verkaufen, der diese Anforderungen nicht erfüllt, solange Sie nicht eine billige Kopie von Windows zur Vorinstallation und einen schönen Aufkleber haben möchten

Es gibt buchstäblich keine Anforderung für einen PC, der außerhalb des Microsoft-Lizenzprogramms verkauft wird, Secure Boot auf eine bestimmte Weise zu konfigurieren oder Secure Boot überhaupt zu integrieren

Ein PC, der behauptet, eine mit UEFI 2.2 oder höher kompatible Firmware zu haben, muss Secure Boot implementieren, kann aber mit buchstäblich absolut beliebiger Konfiguration ausgeliefert werden (einschließlich ausgeschaltet)

Wenn Sie sehr laute Meinungen über Secure haben Boot, Sie haben keine Entschuldigung dafür, die Microsoft-Zertifizierungsanforderungen nicht zu lesen

Im Augenblick

Ich werde warten

Sie können nach “Secure Boot” suchen, um zum entsprechenden Bit zu gelangen

Es beginnt bei “System.Fundamentals.Firmware.UEFISecureBoot”

Du solltest es lesen

Aber hier ist eine Zusammenfassung dessen, was darin steht.

Computer, die die Anforderungen erfüllen, müssen:

Versenden Sie mit aktiviertem Secure Boot (außer für Server)

Haben Sie den Schlüssel von Microsoft in der Liste der Schlüssel, denen sie vertrauen

Deaktivieren Sie den BIOS-Kompatibilitätsmodus, wenn Secure Boot aktiviert ist (eigentlich erfordert dies auch die UEFI-Spezifikation, wenn ich es richtig gelesen habe)

Signatur-Blacklisting unterstützen

x86-Computer, die die Anforderungen erfüllen, müssen außerdem:

Erlauben Sie einer physisch anwesenden Person, Secure Boot zu deaktivieren

Deaktivieren des sicheren Starts durch eine physisch anwesende Person Erlauben Sie einer physisch anwesenden Person, den benutzerdefinierten Modus zu aktivieren und die Liste der Schlüssel zu ändern, denen die Firmware vertraut

ARM-Computer, die die Anforderungen erfüllen, müssen außerdem:

Lassen Sie NICHT zu, dass eine physisch anwesende Person Secure Boot deaktiviert

eine physisch anwesende Person, um Secure Boot zu deaktivieren

Erlauben Sie NICHT einer physisch anwesenden Person, den benutzerdefinierten Modus zu aktivieren und die Liste der Schlüssel zu ändern, denen die Firmware vertraut

ja das hast du richtig gelesen

Die Microsoft-Zertifizierungsanforderungen für x86-Computer verlangen explizit, dass Implementierer einem physisch anwesenden Benutzer die vollständige Kontrolle über Secure Boot geben – schalten Sie es aus oder kontrollieren Sie die Liste der Schlüssel, denen es vertraut

Ein weiterer wichtiger Hinweis hier ist, dass die Zertifizierungsanforderungen zwar besagen, dass die Standardliste der vertrauenswürdigen Schlüssel den Schlüssel von Microsoft enthalten muss, sie sagen jedoch nicht, dass sie beispielsweise keine anderen Schlüssel enthalten darf

Die Anforderungen erlauben explizit und absichtlich, dass das System auch mit einer beliebigen Anzahl anderer vertrauenswürdiger Schlüssel ausgeliefert wird

Diese Anforderungen sind nicht vollständig aus der Güte von Microsoft oder irgendetwas anderem heraus vorhanden – sie sind zum großen Teil aufgrund anderer Personen vorhanden erklärte Microsoft, wenn sie nicht anwesend wären, hätte es einen höllischen Rechtsstreit zu befürchten2 – aber sie sind anwesend

Wer UEFI und Secure Boot tatsächlich versteht, kann die Anforderungen unmöglich anders lesen, sie sind äußerst klar und eindeutig

Beide beabsichtigen eindeutig und schaffen es, sicherzustellen, dass der Besitzer eines zertifizierten Systems die vollständige Kontrolle über Secure Boot hat der Zertifizierungsanforderungen, und Sie sollten sich auf jeden Fall sehr laut bei jemandem beschweren

Wenn viele dieser Systeme existieren, dann haben wir eindeutig ein Problem und es könnte Zeit für diese riesige Klage sein, aber bisher ist mir nicht bekannt, dass dies der Fall ist

Alle x86-basierten, Windows-zertifizierten Systeme, die ich gesehen habe, hatten die Option „Sicheren Start deaktivieren“ in ihren Firmwares

Jetzt sind die Anforderungen für ARM-Maschinen wesentlich böser: Sie besagen genau das Gegenteil, dass es sein muss Es darf nicht möglich sein, Secure Boot zu deaktivieren, und es darf für den Systembesitzer nicht möglich sein, die vertrauenswürdigen Schlüssel zu ändern

Das ist schlecht und falsch

Es macht Microsoft-zertifizierte ARM-Systeme zu einem geschlossenen Laden

Aber es ist erwähnenswert, dass es nicht schlechter oder falscher ist als die meisten anderen großen ARM-Plattformen

Apple sperrt den Bootloader auf allen iDevices, und die meisten Android-Geräte werden auch mit gesperrten Bootloadern ausgeliefert was man drauf booten kann

Wenn dir das nicht gefällt, kauf dir keinen

Aber kaufen Sie auch kein iDevice oder ein Android-Gerät mit einem gesperrten Bootloader (Sie können Android-Geräte mit entsperrtem oder entsperrbarem Bootloader kaufen, aber Sie müssen Ihre Nachforschungen anstellen)

Im Moment schützen die Zertifizierungsanforderungen von Microsoft ausdrücklich Ihr Recht, zu bestimmen, was auf Ihrem System booten kann

Das ist gut.

Empfehlungen

Das Folgende sind die allgemeinen Empfehlungen von AdamW zum Verwalten des Systemstarts, die ohne jegliche Garantien für Genauigkeit, Reinheit oder Sicherheit angeboten werden.

Install Windows 10 on Apple iMAC and MacBooks , this is how to do it with REFIT ..2018 Update

Video unten ansehen

Neue Informationen zum Thema refit bootmanager

refit bootmanager Sie können die schönen Bilder im Thema sehen

 Update Install Windows 10 on Apple iMAC and MacBooks , this is how to do it with REFIT ..2018
Install Windows 10 on Apple iMAC and MacBooks , this is how to do it with REFIT ..2018 New

Weitere Informationen zum Thema anzeigen refit bootmanager

Updating

Schlüsselwörter nach denen Benutzer zum Thema gesucht habenrefit bootmanager

Updating

Sie haben das Thema also beendet refit bootmanager

Articles compiled by Tratamientorosacea.com. See more articles in category: DIGITAL MARKETING

Related Videos

Leave a Comment