• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

UEFI, GPT, GRUB2, BIOS, MBR, etc.

susejunky

Moderator
Teammitglied
Hallo Community,

viele der Beiträge hier im Forum zeigen, dass alle, die wie ich in jüngster Vergangenheit einen neuen Rechner erwerben wollten oder erworben haben, mit dem Sachverhalt konfrontiert wurden:

BIOS, MBR und Co. sind „out“. UEFI, secure boot, GPT und Genossen regieren die Welt der neuen, leistungsstarken PCs. Und es gibt GRUB2 (dessen Existenz ich bereits seit mehreren openSUSE-Updates hartnäckig ignoriert habe).

Während ich mich in den letzten Jahren mit BIOS, MBR und GRUB-legacy gut zurechtgefunden habe, waren UEFI, secure boot, GPT und GRUB2 bis vor wenigen Monaten für mich absolutes Neuland.

Alle, die nach einer Checkliste suchen, anhand derer sie in wenigen Minuten openSUSE auf ihrem (möglichst noch mit MS Windows 8.1 vorinstalliertem) System betriebsbereit installieren können, sollten jetzt nicht mehr weiter lesen. Da die möglichen Kombinationen aus eingesetzten Hardware-Konfigurationen und darauf verwendeten Software-Komponenten riesig ist, kann ich kein „Kochrezept“ liefern.

Aber ich will beschreiben, wo ich gesucht und was ich gefunden habe und wie ich vorgegangen bin, um openSUSE 13.2 als alleiniges Betriebssystem (!) auf meiner Hardware (MSI Z97 Gaming 3) in Betrieb zu nehmen.

Als erstes habe ich mein altes Wissen aufgefrischt …

http://de.wikipedia.org/wiki/BIOS
http://de.wikipedia.org/wiki/Master_Boot_Record

... dann habe ich mir einen Überblick über die Neuerungen verschafft ...

http://de.wikipedia.org/wiki/UEFI
http://de.wikipedia.org/wiki/GUID_Partition_Table

… und da die englischsprachigen Seiten gelegentlich noch etwas detaillierter sind ...

http://en.wikipedia.org/wiki/UEFI
http://en.wikipedia.org/wiki/GUID_Partition_Table
http://en.wikipedia.org/wiki/BIOS
http://en.wikipedia.org/wiki/Master_boot_record

… und zum Schluss habe ich mir noch die harten, technischen Fakten heruntergeladen.

http://www.uefi.org/specifications

Meine bis dahin gewonnen Erkenntnisse lassen sich vereinfacht wie folgt zusammenfassen:

  1. UEFI ist keine brandneue Entwicklung (Allerdings ist sie erst in letzter Zeit auch auf dem Markt der Heimanwender vermehrt zu finden).
  2. UEFI ersetzt BIOS.
  3. Einige in BIOS vorhandene Einschränkungen sind in UEFI nicht mehr gegeben (z.B.: BIOS kennt weder Partitionen noch Dateisysteme, UEFI kennt Partitionen und gewisse Dateisysteme)
  4. UEFI kann nur mit 64bit-Betriebssystemen genutzt werden.
  5. UEFI speichert Informationen zu installierten/bootfähigen Betriebssystemen im NVRAM
  6. UEFI bietet eine Benutzer-Shell
  7. Secure boot ist eine UEFI-Erweiterung.
  8. GPT ist Bestandteil der UEFI-Spezifikation; aber UEFI kann auch mit MBR-Partitionierung umgehen und BIOS-basierte Rechner können prinzipiell (betriebssystemabhängig) von GPT-partitionierten Festplatten gestartet werden.
  9. Beim UEFI-Boot werden die Bootloader aus der „EFI system partition (ESP)“ geladen. Diese muss den Partitionstyp EFI (0xef) tragen, mit FAT32 formatiert sein und ein Root-Verzeichnis mit dem Namen „EFI“ enthalten. In diesem werden Unterverzeichnisse für die Bootloader der einzelnen Betriebssysteme angelegt (mit max. einem Bootloader pro Verzeichnis, z.b.: grubx64.efi). Das optionale Unterverzeichnis „boot“ enthält den Default-Bootloader.
Um noch mehr zu erfahren, habe ich dann die Suchmaschine meines Vertrauens genutzt und nach den Begriffen „UEFI“ und „GPT“ (teils in Verbindung in Verbindung mit „Linux“) gesucht. Das fördert eine Fülle an weiteren Informationen zu Tage. Allerdings meist in englischer Sprache. Viele der Abhandlungen gehen davon aus, dass auf einem PC bereits ein gewisses Betriebssystem installiert ist und nun ein Linux-System zusätzlich installiert und lauffähig gemacht werden soll.

Die erste, wichtige weitere Erkenntnisse für mich war:

Nicht alle Motherboard-Hersteller implementieren die UEFI-Spezifikation gleich, manche implementieren sie angeblich auch nicht korrekt/vollständig.

Daraufhin habe ich mich auf der Internetseite meines Motherboard-Herstellers umgesehen. Leider waren die Informationen dort nicht sehr üppig. Aber es gab ein Handbuch zu meinem Motherboard, in dem die einstellbaren Optionen rudimentär erläutert waren.

Hier noch ein paar weitere Ergebnisse meiner Suche, die ich als hilfreich empfunden habe:

https://en.opensuse.org/openSUSE:UEFI
http://superuser.com/questions/376470/how-to-reinstall-grub2-efi
https://help.ubuntu.com/community/UEFI
http://spblinux.de/blog/2013/06/uefi-and-bios-bootable-usb-stick-with-grub2
http://www.sysresccd.org/Sysresccd-Partitioning-EN-The-new-GPT-disk-layout

*** 28.01.2015 Nachtrag ***

Am 31.12.2014 hat josef-wien (Mitglied hier im Forum) noch auf folgende Quelle hingewiesen:

http://www.rodsbooks.com/efi-bootloaders/

Da es sich hierbei um eine sehr umfassende Darstellung der Thematik handelt, die ich jedem empfehlen kann, habe ich sie hier der Vollständigkeit halber nachgetragen.
Vielen Dank an josef-wien für diesen Hinweis!

*** Ende Nachtrag ***

Als nützliche Werkzeuge beim Umgang mit UEFI und GPT wurden „efibootmgr“ und „gdisk“ genannt.

Der Einfachheit halber habe ich mich zu diesem Zeitpunkt entschieden ein System im UEFI-Modus, ohne secure boot und mit GPT-formatierter Platte zu bauen. Dazu habe ich mein Motherboard wie folgt konfiguriert:

  • "UEFI-Modus" ein
    „secure boot“ aus
    „fast boot“ aus
Abschließend habe ich mir (mit Hilfe meines alten Rechners) die openSUSE 13.2 Installations-DVD und (für alle Fälle) die openSUSE 13.2 KDE-Live-CD heruntergeladen und gebrannt.

Nach dem Start von der openSUSE 13.2 Installations-DVD hat mir der Installer nur eine MBR-Installation angeboten. Das kam wohl daher, dass die einzige in meinem System vorhandene Platte zwar leer, aber mit MBR vorpartitioniert war.

Daraufhin habe ich die openSUSE 13.2 KDE-Live-CD gestartet und mit „gdisk“ eine GPT-Partitionstabelle auf die Platte geschrieben. Danach konnte ich mit der Experten-Option des Installers der openSUSE 13.2 Installations-DVD problemlos meine GPT-basierte Wunsch-Partitionierung vornehmen:

  • Partition 1: Typ EFI (0xef00) mit FAT32 eingebunden als /boot/efi
    Partition 2: Typ Linux swap (0x8200)
    Partition 3: Typ Linux (0x8300) mit ext4 eingebunden als /
    Partition 4: Typ Linux (0x8300) mit ext4 eingebunden als /home
Die weitere Installation verlief problemlos und das System ist seit nunmehr über zwei Monaten stabil im Einsatz. GRUB2 hat sich bislang als "problemloser Geselle" gezeigt: In der ESP unter "EFI/opensuse/" werden die Dateien grubx64.efi und grub.cfg abgelegt, wobei letztere nur einen Verweis auf die Datei "/boot/grub2/grub.cfg enthält.

Es gibt sicherlich noch viel mehr Details zu berichten, daher sind gezielte Fragen zu spezifischen Problemen willkommen. Soweit es mir möglich ist, will ich die hier gerne beantworten. Aber bitte beachten: Ich besitze keine Version des Betriebssystems aus Redmond.

Mein Fazit:
Das Netz ist voller Informationen zu den Themen UEFI & Co. und in den meisten Fällen wird die Thematik „Parallel-Installation zu ...“ ausführlich mit behandelt. Allerdings erfordern die meisten Funde aufgrund unterschiedlichere UEFI-Implementierungen in Verbindung mit vielen möglichen Kombinationen aus Hardware-Konfiguration und verwendeten Software-Komponenten eine gewisses Maß an eigener Bewertung und Selektion. Dazu ist ein gewisses Mindestverständnis der Thematik erforderlich, das man sich jedoch mit Wikipedia erarbeiten kann (insbesondere, wenn man den weiterführenden Links folgt).

Viele Grüße und ein frohes neues Jahr

susejunky
 

josef-wien

Ultimate Guru
Zu Deinem durchaus interessanten Beitrag habe ich noch einige Anmerkungen:

susejunky schrieb:
4. UEFI kann nur mit 64bit-Betriebssystemen genutzt werden.
Diese Aussage entspricht nicht der UEFI-Spezifikation, sie scheint aber weitgehend gelebte Praxis zu sein.

susejunky schrieb:
6. UEFI bietet eine Benutzer-Shell
Voraussetzung ist, daß der Hersteller eine solche implementiert. Manche bieten wenigstens die Möglichkeit, sie in Form einer Datei Shellx64.efi (oder Shellx32.efi) im Hauptverzeichnis der EFI-Systempartition zur Verfügung zu stellen. (Interessierte können in https://svn.code.sf.net/p/edk2/code/branches/ in den jeweiligen Verzeichnissen EdkShellBinPkg (Version 1.x) und ShellBinPkg (Version 2.x) stöbern, nicht jede Version funktioniert überall.)

susejunky schrieb:
9. ... „EFI system partition (ESP)“ ... muss ... mit FAT32 formatiert sein ... Das optionale Unterverzeichnis „boot“ enthält den Default-Bootloader.
Die UEFI-Spezifikation schreibt verpflichtend FAT12, FAT16 und FAT32 vor (weitere Dateisysteme sind optional möglich, ich habe bisher aber noch nirgends über die erfolgte Implementierung eines vernünftigen Dateisystems gelesen). Für herkömmliche Partitionengrößen ist FAT32 suboptimal.

Wenn im UEFI-Bootmenü eine "UEFI-Festplatte" ausgewählt wird, wird von deren EFI-Systempartition die Datei \EFI\BOOT\BOOTX64.EFI (bzw. \EFI\BOOT\BOOTX32.EFI) ausgeführt. Für alle anderen Möglichkeiten muß jeweils eine eigene Eintragung im UEFI-Bootmenü ("NVRAM") erfolgen (in der UEFI-Shell 2.x mit dem Befehl bcfg, in Linux mit dem Befehl efibootmgr).

Zum Abschluß möchte ich auch hier ergänzen, daß UEFI in der Lage ist, einen einigermaßen aktuellen Linux-Kernel direkt, also ohne zwischengeschaltetem bootloader, zu starten.

P. S. Die für mich wichtigste Seite vermisse ich in Deinem Beitrag: http://www.rodsbooks.com/efi-bootloaders/
 
OP
susejunky

susejunky

Moderator
Teammitglied
Hallo josef-wien,

josef-wien schrieb:
P. S. Die für mich wichtigste Seite vermisse ich in Deinem Beitrag: http://www.rodsbooks.com/efi-bootloaders/

Das ist wirklich eine phantastische Fundstelle !!! Vielen Dank, dass Du sie hier zur Verfügung stellst. Wer sich scheut die UEFI-Spezifikation zu lesen, sollte sich unbedingt diese Seiten ansehen.

In der Tat habe ich an der einen oder anderen Stelle meiner Zusammenfassung "vereinfacht", das will ich nicht "schön-reden". Grundsätzlich bin ich überzeugt, dass die genannten Themen nicht mit einem "Kochrezept" abgehandelt werden können. Dazu ist die Anzahl der möglichen unterschiedlichen Konstellationen meines Erachtens zu groß. Es empfiehlt sich, die Thematik nur mit einem gewissen Basiswissen (das man sich leider anlesen muss)anzugehen. Deshalb wollte ich zuerst nur mein Vorgehen beschreiben und meine Quellen benennen. Beim Durchlesen erschien mir der Beitrag dann allerdings sehr abstrakt und um ihn etwas "griffiger" zu gestalten, habe ich dann noch eine vereinfachte Zusammenfassung hinzugefügt.

Ich bin mir auch nicht sicher, ob - wie hier bereits mehrfach diskutiert - ein detaillierter Wiki-Beitrag wirklich hilfreich wäre (sollte jedoch jemand beginnen einen solchen zu erstellen, so wäre ich grundsätzlich bereit meine Kenntnisse dort einzubringen).

josef-wien schrieb:
Zum Abschluß möchte ich auch hier ergänzen, daß UEFI in der Lage ist, einen einigermaßen aktuellen Linux-Kernel direkt, also ohne zwischengeschaltetem bootloader, zu starten.

Das würde ich bei meinem System (Kernel 3.18.1-1.g5f2f35e-default) gerne ausprobieren. Wärst Du bereit, hier etwas detaillierter zu beschreiben, wie ich dazu vorgehen muss?

Vielen Dank im Voraus und viele Grüße

susejunky
 

abgdf

Guru
susejunky schrieb:
Grundsätzlich bin ich überzeugt, dass die genannten Themen nicht mit einem "Kochrezept" abgehandelt werden können. Dazu ist die Anzahl der möglichen unterschiedlichen Konstellationen meines Erachtens zu groß. Es empfiehlt sich, die Thematik nur mit einem gewissen Basiswissen (das man sich leider anlesen muss)anzugehen.
Mit anderen Worten: Schon Linux auf einem neuen (UEFI-)Rechner (den es bald nur noch gibt) überhaupt zu installieren, ist für einen ambitionierten Spezialisten vielleicht möglich, aber für einen Anfänger schwierig bis nahezu unmöglich.
Während Windows sich weiterhin ohne weiteres installiert.
Technisch aussperren durften sie Linux wohl nicht, aber auf diese Weise unterdrückt man andere Systeme als das eigene in der Praxis auch. Das haben sie dann ja geschickt eingefädelt.

Prost Neujahr!
 

gehrke

Administrator
Teammitglied
abgdf schrieb:
Während Windows sich weiterhin ohne weiteres installiert.
Technisch aussperren durften sie Linux wohl nicht, aber auf diese Weise unterdrückt man andere Systeme als das eigene in der Praxis auch. Das haben sie dann ja geschickt eingefädelt.
Ein Schelm, wer böses dabei denkt...

@susejunky: Danke für diesen sehr hilfreichen Artikel.
 

josef-wien

Ultimate Guru
susejunky schrieb:
Um einen Eintrag im UEFI-Bootmenü vorzunehmen:
Code:
efibootmgr -c -d /dev/sdd -p 1 -L "openSUSE blablabla" -l '\vmlinuz' -u 'initrd=/initrd root=/dev/disk/by-id/ata-blablabla-part2 sonstige_Optionen'
Um es mit einem Befehl in der UEFI-Shell auszuführen:
Code:
fs0:\vmlinuz ' root=/dev/disk/by-id/ata-blablabla-part2 initrd=\initrd sonstige_Optionen '
Den Befehl kannst Du auch in eine Datei blablabla.nsh (mit Windows/DOS-Zeilenende) im Hauptverzeichnis der EFI-Systempartition schreiben, dann ist weniger zu tippen:
Code:
fs0:\blablabla
Voraussetzung ist, daß sich vmlinuz und initrd auf einer Partition befinden, die UEFI lesen kann (bei mir erledigt das ein zusätzliches mkinitrd-Skript). Falls dracut wie mkinitrd agiert, kannst Du root=... ebenso wie resume=... weiterhin weglassen.

abgdf schrieb:
für einen Anfänger schwierig bis nahezu unmöglich
So schwarz sehe ich das nicht, dann würden ja sämtliche Foren voll von derartigen Problemen sein. Jede Automatik basiert auf einer begrenzten Menge von Voraussetzungen, und da hat es die Beschränktheit von Windows natürlich einfacher. Nur die relativ wenigen Fälle, mit denen YaST oder die GRUB2-Einrichtung nicht zurechtkommen, landen hier im Forum.
 
OP
susejunky

susejunky

Moderator
Teammitglied
Hallo abgdf,

abgdf schrieb:
... Mit anderen Worten: Schon Linux auf einem neuen (UEFI-)Rechner (den es bald nur noch gibt) überhaupt zu installieren, ist für einen ambitionierten Spezialisten vielleicht möglich, aber für einen Anfänger schwierig bis nahezu unmöglich.
Während Windows sich weiterhin ohne weiteres installiert.
Technisch aussperren durften sie Linux wohl nicht, aber auf diese Weise unterdrückt man andere Systeme als das eigene in der Praxis auch. Das haben sie dann ja geschickt eingefädelt. ...

ganz so dramatisch sehe ich die Situation nicht. Es tut mir leid, wenn meine Darstellung diesen Eindruck erweckt hat. Das war nicht meine Absicht.

Allerdings ist es meines Erachtens schon immer eine etwas anspruchsvollere Aufgabe gewesen, einen fertig vorinstallierten Rechner (der ggf. sogar auf das vorinstallierte Betriebssystem hin "optimiert" wurde - und dadurch auch etwa "preisgünstiger" war) mit einem zweiten, zusätzlichen Betriebssystem zu bestücken. Als Besonderheit kommt in der aktuellen Situation jedoch hinzu, dass ein Technikwechsel stattfindet (UEFI ersetzt BIOS, GPT ersetzt MBR, etc.). Das bedeutet, dass die betroffenen Bereichen zur Zeit noch vermehrt Änderungen unterliegen, zu diesen Bereichen weniger Erfahrungen vorhanden und die Informationen zu diesen Bereichen oft nur bedingt zuverlässig und noch nicht breit gestreut sind. Deshalb würde ich zur Zeit niemanden mit einem "Kochrezept" auf die Reise schicken wollen. Ende des Jahres kann sich die Situation schon wieder positiver darstellen.

Viele Grüße

susejunky
 
OP
susejunky

susejunky

Moderator
Teammitglied
Hallo josef-wien,

vielen Dank für Deine schnelle Rückmeldung.
josef-wien schrieb:
Um einen Eintrag im UEFI-Bootmenü vorzunehmen:
Code:
efibootmgr -c -d /dev/sdd -p 1 -L "openSUSE blablabla" -l /vmlinuz -u 'initrd=/initrd root=/dev/disk/by-id/ata-blablabla-part2 sonstige_Optionen'
Das war mir bekannt und ich habe auch schon mit "efibootmgr" an meinem NVRAM "rumgefummelt". Allerdings stehen ein paar der dabei erhaltenen Ergebnisse noch nicht im Einklang mit meinem "Weltbild". Aber ich arbeite daran. Sollte ich zu keinem Ergebnis kommen, werde ich mein Problem in einer separaten Anfrage hier präsentieren.

josef-wien schrieb:
Um es mit einem Befehl in der UEFI-Shell auszuführen:
Code:
fs0:\vmlinuz ' root=/dev/disk/by-id/ata-blablabla-part2 initrd=\initrd sonstige_Optionen '
Den Befehl kannst Du auch in eine Datei blablabla.nsh (mit Windows/DOS-Zeilenende) im Hauptverzeichnis der EFI-Systempartition schreiben, dann ist weniger zu tippen:
Code:
fs0:\blablabla
Voraussetzung ist, daß sich vmlinuz und initrd auf einer Partition befinden, die UEFI lesen kann (bei mir erledigt das ein zusätzliches mkinitrd-Skript). Falls dracut wie mkinitrd agiert, kannst Du root=... ebenso wie resume=... weiterhin weglassen.

Das ist nun Neuland für mich. Ich werde es gleich mal ausprobieren.

Nochmals danke und viele Grüße

susejunky
 

josef-wien

Ultimate Guru
Nachdem ich gerade festgestellt habe, daß die efibootmgr-Version 0.5.4 von 13.1 den Schrägstrich vor vmlinuz noch nicht in einen Rückwärtsschrägstrich umwandelt (die Version 0.11.0 kann das nämlich), habe ich meinen Befehl von gestern, 12:03 Uhr, sicherheitshalber adaptiert.
 

gehrke

Administrator
Teammitglied
gehrke schrieb:
abgdf schrieb:
Während Windows sich weiterhin ohne weiteres installiert.
Technisch aussperren durften sie Linux wohl nicht, aber auf diese Weise unterdrückt man andere Systeme als das eigene in der Praxis auch. Das haben sie dann ja geschickt eingefädelt.
Ein Schelm, wer böses dabei denkt...
http://www.heise.de/newsticker/meldung/31C3-Warnung-vor-Secure-Boot-und-Trusted-Computing-2507013.html
 
A

Anonymous

Gast
@ALL

Ich hab mich die letzten Wochen mal ziemlich intensiv mit dem Thema beschäftigt.
ein Vorschlag von mir damit das hier im Wiki vielleicht mal vorwärts geht.

Also fest steht, wir müssen/können/sollten da wirklich was machen, das Thema ist leider ziemlich komplex die wenigsten haben sich bisher damit wirklich intensiv auseinander gesetzt und es muss ziemlich viel ausprobiert werden, bevor wir das den Usern im Wiki zum konsumieren auf deren Hardware vorwerfen können. Auch ist in der ganzen Materie derzeit viel Bewegung. Einer Alleine :???: das wird nichts vernünftiges, also müsste ein Team her. Ich mache jetzt 4 Wochen Urlaub, und das sind jährlich auch die 4 Wochen in denen ich 100%ig offline bin. Ihr könnt ja in der Zwischenzeit schon mal diskutieren,wer sich eventuell beteiligen will, und euch einen Teamleiter ausgucken, der die Truppe ein bischen zusammenhält, anteibt und vor Allem die Streihähne in die Schranken weist, bzw es könnt einer auch schon mal mit dem GPT anfangen, das Thema ist ansich noch ziemlich einfach und kann separat und ganz normal abgehandelt werden.

Im Folgenden mein Vorschlag für UEFI und was damit in Zusammenhang steht:

Benötigt wird ein Team von 5 bis maximal 8 Leuten. Nicht alle brauchen im Wiki zu schreiben, das reicht vollkommen wenn dort 3 Mann aktiv werden. Einige werden jedoch zusätzlich benötigt, die gleichzeitig mittesten + mitspielen, mit denken, mitreden und Korrektur Lesen und auch tatkräftig Feedback geben können, zB inwieweit ein normaler User das noch begreifen und verstehen kann, auch wenn er nicht 100 Bücher über UEFI gelesen hat, Einer sollte vielleich ein bischen grafisch begabt sein mit Gimp oder ähnlichen, wir brauchen eventuell ein paar Grafiken. zB. um die Unterschiede zwischen BIOS und UEFI und die Funktionsweise des UEFI einigermaßen verständlich zu machen. was ich bisher gefunden habe ist nur zT gut und für unsere Zwecke zu bebrauchen bzw das Format oder die Linzenz ist nicht für's Wiki geeignet. Auch ein paar bearbeitete Scrensshots und so ein Zeugs wird wahrscheinlich anfallen.
Einer sollte sich ein bischen mit x509 Certifikaten auskennen, also einer der vielleicht selbst beruflich mit openLDAP oder Apache rumspielt und dort schon einige praktischen Erfahrung mit openssl und dem ganzen Zertifizierungskram hat. Auch wenn das dann für Otto den NormalLinuxer wohl etwas zu weit geht, werden wir nicht ganz darum rumkommen.
Wir würden eventuell auch einen privaten Kommunikations Kanal benötigen, über den wir uns untereinander verständigen können, hier im Forum über PN :???: , bin ich mir nicht sicher ob das viel bringt, Gut wäre zB. wenn jemand eine private Mailingliste dafür einrichten oder zur Verfügung stellen könnte.

Benötigt wird meiner Meinung nach

ein Beitrag der die Prinzipien von BIOS und UEFI vergleicht und UEFI dem User ein bischen näher bringen kann. Was steckt da dahinter, was kann das Ding, und warum sieht jeder anders aus, Dort sollten dann auch ein paar Bilder rein wie der UEFI derzeit von den einzelnen Herstellern gestaltet wird. Das ist wahrscheinlich der schwierigste Artikel wenn wir nicht bis in den Urschleim rein wollen.

ein Beitrag der die UEFI-Shell beschreibt, was man damit machen kann, Konfiguration auslesen und ändern, von dort aus booten, vielleicht ein paar mehr Beispiele, auf keinen Fall ein komplettes User-Handbuch -- davon gibt es schon einige, aber ein Kompendium da es hier eine ganze Menge ziemlicher Besonderheiten und Einschränkungen gibt, die man durchaus mal alle zusammen übersichtlich auf eine deutsche Seite bringen könnte.

einen Beitrag ( mit Beispielkonfigs) der sich mit den verschiedenen Boot Konfiguration und Tools von UEFI unter Linux befasst. (elilo grub2 shim efibootmgr Yast-Bootmanager /boot/efi usw.)

einen Beitrag speziell für das Thema "Secure Boot" also zu was ist das gut, wie funktioniert das, wo sind da Probleme, wie ist damit umzugehen:
Ein<->Aus / von Microsoft signierte Bootloader für Linux zB shim pre-bootlaoder / UEFI im Setup- oder User-mode / und ein sehr sehr junges Thema das wohl irgendwann mal sehr spannend werden könnte, spätestens wenn man anfängt Linux Server über UEFI zu booten, Ersetzen bzw. konfigurieren der Secure Boot Schlüssel: efivarfs efitools sbsigntools pesign

einen Beitrag Musterkonfigurationen und Erklärungen dazu: booten aus dem UEFI von HD, File, CD, Floppy, USB, Netzboot, iSCSI, Multiboot-Auswahl und Konfigurationmöglichkeiten

einen Beitrag Windows 8.x und Linux auf der selben Kiste im Multiboot

Wie ihr seht, es gibt eine Menge zu ergooglen, zu lesen, zu verstehen, ausprobieren, dazu zu lernen und dann etwas allgemeinverständlich niederzuschreiben.
Aber alles halb so schlimm, auch für mich war und ist das Neuland und ich habe nach 2 Wochen schon schier Unglaubliches hinbekommen, so dass es schon wieder anfängt Spaß zu machen, das meiste geht prima und völlig und unkritisch für den eigenen Rechner, auf rein virtueller Basis. Man braucht also für das meiste weder einen eigenen Rechner mit UEFI noch würde man seinen Rechner oder die Konfiguration darauf zerschießen wenn mal was schief geht. Ich würde euch ein Setup vorschlagen auf einer ( am besten eigenen ) openSuse 13.1 Partition.
Benötigt wird in etwa : ein 64 Bit Rechner ( min. 2 Kerne reicht aber auch Hyperthread) mit min. 4GB Speicher und ca 50GB Plattenplatz auf dem man ein "default" openSuse 13.1 speziell nur für das ausprobieren und testen der VM mit dem UEFI installiert. Benötigt wird noch eine DVD oder ein Image von der 13.1 und ein paar spezielle Pakete die eventuell so nicht in der default Edition vorhanden sind, der Rest läuft dann darauf virtuell über QEMU. Und wenn was kaputt geschossen oder komplett verkonfiguriert, ist es mit wenigen Befehlen wieder ersetzt. Genaues Setup würde ich euch dann verraten und das hätte dann auch den Vorteil, das alle das gleiche Setup zu ausprobieren und testen haben.

So, ich gehe jetzt in Urlaub, und ihr könnt euch schon mal Gedanken machen was ihr in eurer Freizeit demächst so alles anstellen wollt. ;)

Mein Angebot steht, Wer spielt mit ?

robi
 

gehrke

Administrator
Teammitglied
Das klingt spannend.
robi schrieb:
Mein Angebot steht, Wer spielt mit ?
Nachdem ich mich hier http://forum.linux-club.de/viewtopic.php?f=115&t=119778 ebenfalls schon dafür stark gemacht habe, bei diesem Themenkomplex für mehr Klarheit zu sorgen, bin ich durchaus bereit, mich im Rahmen meiner Möglichkeiten einzubringen.

Kontaktdaten auf 'meiner' Wiki-Seite...
 

TomcatMJ

Guru
Also falls ich dabei irgendwie weiterhelfen kann wär ich auch dabei...der Haken ist nur, ich hab keinerlei UEFI oder GPT nutzende Hardware hier.
Dafür allerdings eine Plattform die man zur Koordination und für die Erstellung von Vorabversionen etc. "zweckentfremden" und bei Bedarf entsprechend modifizieren/erweitern könnte ;) (siehe dazu in meiner Signatur)
 
OP
susejunky

susejunky

Moderator
Teammitglied
Hallo robi,

robi schrieb:
@ALL

ein Vorschlag von mir damit das hier im Wiki vielleicht mal vorwärts geht.
...
So, ich gehe jetzt in Urlaub, und ihr könnt euch schon mal Gedanken machen was ihr in eurer Freizeit demächst so alles anstellen wollt. ;)

Mein Angebot steht, Wer spielt mit ?

robi
wie Du schon dargestellt hast, ist das Thema UEFI & Co. ziemlich umfangreich. Einerseits ist, wie man an den Anfragen hier im Forum erkennen kann, der Informationsbedarf akut. Andererseits existieren zu dem Thema auch bereits viele, durchaus brauchbare Informationen im Netz (Wikipedia, der von josef-wien hier bereitgestellte Verweis auf http://www.rodsbooks.com/linux-uefi, etc.).

Die von Dir vorgeschlagene Vorgehensweise wird einiges an Vorbereitung in Anspruch nehmen, bevor erste nutzbare Ergebnisse zur Verfügung stehen. Auch wenn ein großer Teil der Arbeit nur darin bestehen wird, bereits vorhandene Quellen "zusammen zu kopieren" und/oder zu übersetzen.

Um möglichst kurzfristig Unterstützung bieten zu können, schlage ich folgendes (ggf. zusätzliches) Vorgehen vor:

  1. Hier im Forum, unter der Rubrik Wiki-Forum, einen gesperrten Eintrag mit aussagekräftigem Titel anlegen, in dem die bereits bekannten Verweise zu weiterführenden Informationen (und solche die noch bekannt werden) gezielt gesammelt werden.
  2. Sobald erkennbar ist, dass eine gewisse Problemstellung mit den Informationen aus der Link-Sammlung nicht oder nur schwer zu lösen ist, werden gezielt weiterführende Information zu dieser Problemstellung in den gesperrten Eintrag aufgenommen. Die Identifikation der so zu bearbeitenden Themstellungen könnte wie folgt über das Forum erfolgen:
    • Mitglieder schlagen klar abgegrenzte, überschaubare, durch die Verweise nicht abgedeckte Problemstellungen vor
    • Moderatoren (oder ein Gremium) wählen ein Problemstellung aus
    • Mitglieder können bis zu einem vorgegebenen Termin eine Lösung für diese Problemstellung beschreiben
    • Moderatoren (oder ein Gremium) bewerten und konsolidieren die Lösungsbeschreibungen und stellen sie in den gesperrten Eintrag ein

So könnte sehr schnell eine erste Unterstützung bereitgestellt werden und die noch vorhandenen Lücken könnten nach und nach gefüllt werden. Sobald brauchbare Wiki-Dokumente vorliegen, kann der gesperrte Eintrag gelöscht werden. Käme, aus welchen Gründen auch immer, keine Wiki-Erweiterung zum Thema UEFI & Co. zustande, so stünde den Hilfesuchenden zumindest eine zentrale (eventuell etwas weniger ausführlichere) Informationsquelle zur Verfügung.

Unabhängig von der letztendlich gewählten Vorgehensweise bin ich grundsätzlich bereit, meine bislang zum Thema UEFI & Co. gewonnenen Erkenntnisse einzubringen. Kontakt gerne über PN.

Viele Grüße

susejunky
 
A

Anonymous

Gast
TomcatMJ schrieb:
Also falls ich dabei irgendwie weiterhelfen kann wär ich auch dabei...der Haken ist nur, ich hab keinerlei UEFI oder GPT nutzende Hardware hier.
Dafür allerdings eine Plattform die man zur Koordination und für die Erstellung von Vorabversionen etc. "zweckentfremden" und bei Bedarf entsprechend modifizieren/erweitern könnte ;) (siehe dazu in meiner Signatur)

Wie ich schon geschrieben habe, es wird für das Allermeiste überhaupt keine Hardware mit UEFI benötigt. Es reicht ein opensuse 13.1 (notfalls von USB) mit etwas Plattenplatz die als Host für qemu (eventuell auch KVM möglich) für Virtualisierung genutzt werden kann. Eine ziemlich gute aktuelle UEFI gibts virtuell mit all dem was man zum konfigurieren, ausprobieren und sonst wie zum booten von allem möglichem gebrauchen kann. Ist letztlich ein Teilbereich dieser Entwicklerumgebung und genau das selbe das vom Großteil der Entwickler und Programmierer im UEFI Umfeld dort auch derzeit benutzt wird. Fertige und gut gepflegte Pakete gibts ebenfalls im OBS. Ein einfaches Setup für das was wir brauchen würden, kann ich so erstellen das das jeder problemlos aufsetzen kann, und da ich schon eine ganze Menge ausprobiert habe gibt's fürs erste auch gleich die richtigen Tips wie es sofort auch funktioniert. Ist letztlich auch nichts hochkompliziertes zu machen, wir wollen dort nicht programmieren sondern nur konfigurieren und das was es dort im UEFI gibt, erkunden und ausprobieren, die Programme und Tools die in Linux rund um UEFI derzeit dafür vorhanden sind benutzen und austesten und das Ganze so verallgemeinert zusammenschreiben, das man als User damit was anfangen kann, und als Helfer eine vernünftiges und getestetes Basiswissen zur Verfügung hat. Im Internet sind scheinbar alles Infos irgendwo schon vorhanden, nur eben extrem weit gestreut und das meiste im userunverdaulichem hochspezifischem Konsens oder im Entwickler Fachchargon und eben in englisch.

Die Idee deine Wikiplatform zum entwickeln der Seiten nutzen zu dürfen, ist sehr gut. Ich möchte ungern das irgendwelche User halbfertige und halbgare Geschichten auf ihren richtigen Rechnern ausprobieren und sich damit eventuell die Büchse zerschießen.

Wie gesagt, ich sitze auf gepackten Koffern und warte nur noch darauf das ich endlich zum Flughafen fahren darf. Wenn sich also ein paar finden (hier oder anderswo) die gerne ein bisschen mitmachen und mithelfen wollen, hier und da ein bisschen ausprobieren und dabei gegenseitig die Erfahrungen austauschen und sich dabei ganz nebenbei Wissen und Können und ein paar Erfahrungen rund um UEFI (das man demnächst vielleicht doch öfter benötigen könnte) in loser Teamarbeit einsammeln wollen, dann sollten wir uns irgendwie und irgendwo zusammen raufen und das Beste daraus machen.

WER WIE WO ????? Hört euch mal rum, und sammelt ein paar Ideen zusammen.


robi
 

TomcatMJ

Guru
http://www.mosnis.de/de wäre dann die Einstiegsseite zum Registrieren und Anmelden für das zum Erarbeiten der dann später in die Linupedia umzutopfenden Inhalte nutzbare Wiki und Forum wo auch bei Bedarf problemlos neue Unterbereiche einfügbare sind sofern welche benötigt werden...
Nunja, so ganz uneigennützig ists natürlich auch nicht da ich eh früher oder später auch das Thema Netzwerkboot mit UEFI (primär fokussiert natürlich mal wieder mit der sylinux-Suite bzw. dem dort vorhandenen pxelinux als Bootloader) angehen muss, würde sich also sicherlich gut ergänzen da ich ja bisher noch Null Komma Garnix mit UEFI ausprobiert habe mangels Hardware..und daß es nu doch schon UEFI-beinhaltende VMs gibt wusste ich z.B. bis jetzt auch noch nicht ;)
Lizenzprobleme dürften da auch keine auftauchen da dort ebenso alles unter der CC BY-NC-SA 2.0 bzw. CC BY-NC-SA 2.5 lizenziert ist und Autoren sowieso jederzeit ihre Werke unter mehreren Lizenzen zugleich veröffentlichen können wenn sie es wollen ;) (also z.B. auch unter GFDL und CC Lizenz zugleich wenns beliebt)..

Edit: Hm,gerade beim rumgogeln fiel mir dann auch endlich mal auf daß es wohl schon seit c.a. 2010 Virtualbox inkl. (U)EFI Emulation gibt...kann mir vielleicht mal wer sagen warum das an mir vorbeigelaufen zu sein scheint? :???: :D
 

josef-wien

Ultimate Guru
TomcatMJ schrieb:
daß es nu doch schon UEFI-beinhaltende VMs gibt wusste ich z.B. bis jetzt auch noch nicht
http://tianocore.github.io/ovmf/ (interessanterweise bei mir die einzige Möglichkeit, von der openSUSE-DVD auch das dreizeilige "UEFI-Menü" zu sehen, mein echtes UEFI, das vom Aussehen her aber viel eleganter ist, weigert sich standhaft, von der DVD anders als auf die herkömmliche Weise zu starten)
 

Spielwurm

Advanced Hacker
Ich kann als Tester mitmachen. Mein Notebook - siehe Signatur - steht mit einer 240GB SSD voll zur Verfügung. Ist zwar schon 5 Jahre alt, kann aber auf UEFI und Secure Boot umgestellt werden. Was mich betrifft: bin Anwender, habe viel Geduld und bin seit 15 Jahren mit Linux am Arbeiten. An Windows habe ich Win7 Pro mit Lizenz und die Ausprobier-Version von Win8. Passt das?

Spielwurm
 
A

Anonymous

Gast
So, da bin ich wieder, schön dass ihr auf mich gewartet habt.
Ein paar haben ja schon ihre Unterstützung kund gegeben, mir persönlich fehlen noch die eine oder andere Meldungen von ein paar altbekannten experimentierfreudigen Usern, die ich auch sehr gerne dabei hätte, na vielleicht sind sie noch am überlegen.

Das Angebot von TomcatMJ (soweit es noch bestehen sollte) finde ich gut, nichts gegen das Forum hier, aber dort ist es etwas ruhiger und wir sind etwas besser abgeschirmt ohne das wir komplett im verborgenen arbeiten müssten, und vor allem, die Administration ist wohl etwas schneller wenn wir die eine oder andere Resource oder Zusätze mal benötigen würden, als wenn wir jedes mal warten müssten bis Mönk mal vorbei schaut. Es wird wohl einiges an temporären Beiträgen entstehen, die dann nach 2 bis 3 Monaten wieder komplett gelöscht werden können, ohne das es vorher von allen Robots und Suchmaschinen ausgewertet und indiziert worden ist. Google würde ich mal gerne dort draußen vor lassen bis wir einiger maßen fertig sind. Alles in allem würde ich sagen, TomcatMJ bereite schon mal ein Forum vor, ich komme morgen vorbei.

Wie schon gesagt, das meiste geht mittels virtuellen Maschine und es sind eine Menge Dinge auszuprobieren, uA. Installation von unterschiedlichen Distributionen, mehrere unterschiedliche und gleiche Distributionen auf einer und mehreren Platten im gleichem System installieren, UEFI von Linux und UEFI-Shell aus konfigurieren und Bootreihenfolge ändern, spielen mit der (virtuellen)Hardware (Platte zusätzlich rein oder raus, oder Plattenreihenfolge ändern usw.), manipulieren und auch mal ganz zerstören der UEFI-Partition und schauen wie man das wieder reparieren kann, verschieben und ändern der Partitionen, Vollbackups des Betriebssystems und dann das Recover wieder zum booten bringen, mit der UEFI-Shell arbeiten, verschiedene Netzwerkboots konfigurieren und ausprobieren, Lösungen finden wie man Informationen einsammeln kann wenn die Kiste nicht mehr booten will, und wie man sie dann wieder zum booten bringt, prinzipielle UEFI Bootprobleme lösen, verschiedene Bootloader ausprobieren, Lösungen finden und testen für das erstellen von UEFI bootbaren USB-Sticks, Floppy und CD/DVD, ......)

Auf VMs ist es da relativ einfach die Virtuelle Hardware und die Virtuellen Platten zu manipulieren, auf richtiger Hardware wären solche Tests recht aufwendig.
Damit nicht Einer der gerne im WIKI schreiben will "ist in allen Linux Distributionen gleich" auch wirklich alle Distributionen selbst installieren und ausprobieren muss, brauchen wir eben ein paar Leute mehr, die kräftig mit spielen, installieren und testen und kurze Rückmeldungen geben, was in den einzelnen Distributionen eventuell so oder anders ist oder wo es derzeit Probleme oder Unterschiede gibt. Damit liegen dann "dem Schreiber" mehr Infos vor, als er selbst austesten konnte, und kann auch mal den einen oder anderen Test delegieren und muss nicht alles selbst ausprobieren, bzw hat schon einigermaßen gesicherte Informationen und ausprobierte Howtos von den anderen zur Verfügung gestellt bekommen, das das Schreiben schneller geht. Und für die Mitspieler gibt's gleich noch das Eine oder Andere kennen zulernen, zB den einen oder anderen Trick oder Tip rund um Virtualisierung.
Später müssen wir das eine und andere jedoch auch mal an richtiger UEFI-Hardware ausprobieren und vergleichen, insbesondere einiges in Verbindung mit Windows. Aber erst wenn wir virtuell den UEFI voll im Griff haben.

Als Basis für die Virtuellen Tests brauchen wir eine 64Bit Maschine, möglichst mit 2 oder mehr Kernen oder zu mindestens Hyperthreading, etwas Plattenplatz damit wir ein paar virtuelle Platten erstellen können und ein bisschen mehr Speicher (4GB sieht schon recht ordentlich aus), damit die eine VM ein paar Byte Speicher haben kann und einigermaßen läuft. Performance Weltrekorde wollen und brauchen wir nicht aufstellen, es reicht wenn die VM sauber zu installieren ist und einigermaßen läuft, es geht ja um Installation, Konfiguration und Booten.
Ein eigens dafür vorgesehenes System ist empfohlen, aber nicht nicht zwingend erforderlich. Empfohlen deshalb, es müssen ein paar Pakete installiert werden die nicht ganz default sind, es ist empfehlenswert die Netzwerkkonfiguration für diese Verwendung mit VMs entsprechend anzupassen, und wir wollen der Einfachheit halber am besten die VM gleich als root starten und auch so einige Befehle mehr als root starten.
Da ist es schon besser wenn man sich dazu ein eigenes Testsystem aufsetzt, da kommt man mit seinen sonst genutzten Betriebssystem nicht in irgendwelche Konflikte.
Ich selbst habe ein Testsystem auf einer USB3-Platte mit OpenSuse13.1 installiert und nur einen mickrigen AMD E-350 Processor allerdings mit 16GB Speicher am laufen, reicht vollkommen aus. Ihr könnt gerne auch etwas anderes dafür hernehmen oder mit benutzen. Ich werde als erstes mein Setup mit dem 13.1 vorstellen, dann könnt ihr immer noch entscheiden was ihr machen wollt.

robi
 
Oben