Windows 8 und Linux im Dualboot

Aus LinuxUser 12/2012

Windows 8 und Linux im Dualboot

© Grzegorz Rejniak, sxc.hu

Ausgelatscht

Microsoft setzt wieder einmal mehr auf Kosmetik als auf Innovation – trotz neuer Oberfläche verfolgt Windows 8 beim Booten im Wesentlichen die selben rückständigen Konzepte wie seine Vorgänger.

Schlechte Angewohnheiten legt man nur schwer ab. Das gilt nicht nur für Menschen, sondern offenbar auch für Betriebssysteme – zumindest, wenn sie aus Redmond kommen. 1982 durfte MS-DOS 1.25 noch getrost annehmen, sich allein auf dem Boot-Medium zu tummeln – schließlich startete es von Diskette. Festplatten spielten erst ein Jahr später ab MS-DOS 2.0 für den neu heraus gebrachen IBM PC eine Rolle.

Zehn Jahre später hätte Microsoft zumindest wissen können, dass die Koexistenz mit anderen Betriebssystemen künftig wichtig werden würde. Technisch wäre das schon damals kein Problem gewesen, wie 1992 OS/2 2.1 für Windows 3.1 demonstrierte: Es integrierte eine entsprechende Microsoft-Installation beim Einrichten gleich mit. Auch andere reizvolle OS-Alternativen standen bereits zu Verfügung, nicht zuletzt verschiedene PC-Unixe. In Finnland fand gerade ein von einem Studenten zusammengestrickter, unixoider Betriebssystemkern mit dem seltsamen Namen “Linux” zu einer passenden Lizenz: der GPL.

Dieser Kernel paarte sich in den darauffolgenden Jahren eng mit den Userland-Tools des GNU-Projekts, und das resultierende Betriebssystem GNU/Linux wurde schnell derartig populär, dass Microsoft gut beraten gewesen wäre, eine Parallelinstallation auf Windows-Rechnern zu unterstützen. Aber auch 2002 ignorierte Windows XP nach wie vor fröhlich die Tatsache, dass es außer in Redmond auch andernorts interessante Betriebssysteme gab.

30 Jahre nach MS-DOS 1.25 wirkt 2012 auch Windows 8 in dieser Hinsicht noch völlig zurückgeblieben: Wie die Vorgänger bügelt es bei der Installation ungefragt seinen Bootsektor auf die Festplatte, auch wenn dort bereits ein anderer Bootloader liegt. Dabei ignoriert Microsoft penetrant die Tatsache, dass Millionen Anwender Windows nicht als alleiniges Betriebssystem verwenden möchten, ja noch nicht einmal als primäres OS.

Apropos primär: Während sich moderne Betriebssysteme wie Linux mit einer beliebigen Ecke auf der Festplatte begnügen – Hauptsache, dort bleibt noch genügend freier Platz – versteift sich Windows 8 in antiquierter Manier auf die Installation in einer primären Partition. Dies ist denn auch die erste Hürde, die es zu überwinden gilt, will man Windows 8 auf einem Linux-Rechner einrichten.

Platz schaffen

Zwar besteht Windows 8 auf der Verwendung einer primären Partition, doch diese muss nicht zwangsläufig ganz vorne auf der Platte liegen. Das eröffnet die Möglichkeit, im Falle eines Falles eine bereits bestehende erweiterte Partition zu verkleinern, um Platz für das Microsoft-Betriebssystem zu schaffen. Dies erledigen Sie am besten bereits vorab unter Linux mithilfe eines Tools wie Gparted (Abbildung 1). Mit diesem legen Sie auf dem freigeschaufelten Platz sinnigerweise auch gleich eine neue primäre Partition für Windows an.

Abbildung 1: So geht's: Windows 8 benötigt eine primäre Partition, hier <code srcset=

/dev/sda4. Weitere Laufwerke, etwa für Daten oder eine Auslagerungsdatei (hier /dev/sda6), dürfen sich in einer logischen Partition befinden.” width=”300″ height=”165″ /> Abbildung 1: So geht’s: Windows 8 benötigt eine primäre Partition, hier /dev/sda4. Weitere Laufwerke, etwa für Daten oder eine Auslagerungsdatei (hier /dev/sda6), dürfen sich in einer logischen Partition befinden.

Optional spendieren Sie Windows 8 auch noch, wie von Linux gewohnt, eine eigene Swap-Partition. Eine dort lagernde Auslagerungsdatei müssen Sie allerdings später in den Systemeigenschaften von Windows unter Erweitert | Leistung manuell einrichten und aktivieren. Immerhin ist es Windows egal, wo diese sich befindet – sie darf auch in einer erweiterten Partition liegen. Über die angemessene Größe scheiden sich die Geister: 1,5 mal Hauptspeicher gilt als Faustregel, doch bei aktuellen Hauptspeichergrößen von 4 GByte und mehr betreiben viele Windows-Nutzer das Betriebssystem auch problemlos ganz ohne Auslagerungsdatei.

Die Windows-8-Partition selbst sollte wenigstens 12 GByte groß sei, um später im laufenden Betrieb nicht binnen Kurzem vollzulaufen. Das genügt aber lediglich für erste Experimente mit dem Betriebssystem – möchten Sie über den Lieferumfang hinaus Programme einrichten, gilt es entsprechenden Platz hinzuzurechnen. Das gilt auch dann, wenn Sie Windows 8 ein zusätzliches Laufwerk für Daten (auch das darf in einer logischen Partition liegen) spendieren: Das Microsoft-Betriebssystem legt sämtliche benutzerspezifischen Informationen auf der primären Partition unter C:\Users\Benutzer\ ab, wobei recht schnell beachtliche Datenmengen zusammen kommen.

Haben Sie eine Swap-Partition für Windows vorgesehen, können Sie diese noch in Linux vorab mit NTFS formatieren, damit das Microsoft-Betriebssystem diese gleich beim ersten Start einhängt und mit einem Laufwerksbuchstaben versieht. Unbedingt notwendig ist das aber nicht, denn der Swap-Space lässt sich ebenso wie eine eventuelle Windows-Datenpartition später über die Tools des Microsoft-Betriebssystems noch einrichten. Auch das Formatieren der Installationspartition dürfen Sie sich getrost sparen und Windows 8 das während der Systemeinrichtung erledigen lassen.

Windows 8 installieren

Jetzt kann es an das Einrichten von Windows 8 gehen. Nach dem Booten vom entsprechenden Datenträger fragt der Microsoft-Installer zunächst die gewünschte Systemsprache sowie den Product Key ab und fordert zum Abnicken der Lizenzbedingungen auf. Anschließend offeriert die Routine das Upgrade: … einer bestehenden älteren Windows-Instanz, für eine Neueinrichtung wählen Sie im diesem Dialog die Option Benutzerdefiniert: ….

Der Installer fragt nun den gewünschten Installationsort ab. Hier wählen Sie die vorbereitete Partition an, klicken auf Laufwerksoptionen (erweitert) rechts unterhalb der Partitionsliste und lassen die Routine die Partition Formatieren (Abbildung 2). Haben Sie dagegen während der Vorbereitung lediglich Platz für eine Windows-Partition freigemacht, können Sie diese jetzt mit Neu anlegen und anschließend Formatieren.

Abbildung 2: Über den Schalter <code srcset=

Laufwerksoptionen (erweitert) blendet der Windows-8-Installer Funktionen zum Anlegen, Erweitern, Löschen und Formatieren von Partitionen ein.” width=”300″ height=”225″ /> Abbildung 2: Über den Schalter Laufwerksoptionen (erweitert) blendet der Windows-8-Installer Funktionen zum Anlegen, Erweitern, Löschen und Formatieren von Partitionen ein.

Nach dem Erledigen anstehender Partitionierungsarbeiten starten Sie über Weiter den eigentlichen Installationsvorgang. Die Einrichtungsroutine kopiert nun die Daten in die Windows-Partition, zieht gegebenenfalls Updates nach und startet den Rechner anschließend neu. Anschließend können Sie einige Einstellungen treffen, dann gilt es ein Benutzerkonto anzulegen.

Zwar kennt Windows 8 immer noch ein Lokales Konto, für dessen Einrichtung Sie Microsoft keine persönlichen Daten überlassen müssen, doch bietet dieses nur eine eingeschränkte Funktionalität. Als Standard fungiert dagegen ein Microsoft-Konto in der Cloud des Herstellers, für das Sie zumindest eine E-Mail-Adresse, Ihr Geschlecht sowie die Postleitzahl Ihres Wohnorts angeben müssen. Nur mit einem solchen Konto können Sie Apps aus dem Windows Store herunterladen sowie Einstellungen und Daten über mehrere Geräte synchronisieren. Für das Verwenden klassischer Windows-Programme auf dem Desktop allerdings genügt ein lokales Konto völlig, ein Cloud-Konto bei Microsoft können Sie bei Bedarf jederzeit später anlegen.

Nach der Auswahl des Kontentyps und der Eingabe der Authentifizierungsdaten bestätigen Sie die Eingaben noch einmal mit einem Klick auf Fertig stellen. Der Rechner startet nun in die neue Kachel-Oberfläche von Windows 8. Nach dort führt nun auch jeder Neustart des Rechners, weil Windows den Linux-Bootloader – alle gängigen Distributionen verwenden heute Grub2 – rücksichtslos überschrieben hat. Dem gilt es im nächsten Schritt abzuhelfen.

Grub wiederherstellen

Alle Eventualitäten beim Wiederherstellen des Bootsektors abzudecken, würde mit Leichtigkeit einen eigenen Artikel füllen. Eine gut strukturierte Aufstellung zu diesem Thema liefert ein exzellenter Blogeintrag im Ubuntuusers-Wiki [1]. Doch dank Grub2 erfordert es in aller Regel keinerlei größere Kopfstände, wieder zum alten Bootloader zurückzukehren: Alle Daten dazu lagern noch in der ursprünglichen Root-Partition.

Es fehlen nun lediglich die Grub-Kernkomponenten boot.img und core.img im MBR – die hat Windows überschrieben. Am einfachsten lassen diese sich wieder herstellen, indem man in das ursprüngliche Linux-System bootet und von dort den Bootsektor repariert. Das erledigen Sie am schnellsten und einfachsten mithilfe der Super Grub Disk [2]. Diese zählt zum Inventar klassischer Rettungsdistributionen wie der System Rescue CD [3], die Sie auch auf allen Ausgaben unserer LinuxUser Rescue CD finden.

Starten Sie also den Rechner von einer Ausgabe der System Rescue CD neu und wählen Sie in deren Bootmenü den Punkt F) Run system tools from floppy disk image…. Im folgenden Menü finden Sie ganz unten den Punkt SGD: Super Grub Disk, über den Sie die Super Grub Disk starten. Sie erkennt in aller Regel die vorher verwendete Grub-Konfiguration automatisch und bietet das Booten in die entsprechende Partition als ersten Menüpunkt auf ihrer Liste an (Abbildung 3).

Abbildung 3: Die Super Grub Disk erkennt in aller Regel die korrekte Linux-Partition automatisch und bietet diese direkt zum Booten an.

Abbildung 3: Die Super Grub Disk erkennt in aller Regel die korrekte Linux-Partition automatisch und bietet diese direkt zum Booten an.

Wollen Sie aber absolut auf Nummer Sicher gehen, wählen Sie stattdessen den dritten Menüpunkt an, Detect any GRUB2 configuration file ( grub.cfg ). Die SGD durchforstet nun alle Partitionen nach infrage kommenden Bootkonfigurationen und bietet diese zur Auswahl an. Bei unserer Testkonfiguration aus Abbildung 1 erkennt sie korrekt die installierten Distributionen Ubuntu 12.04.1 auf der primären Partition /dev/sda2 und ZevenOS-Neptune auf der logischen Partition /dev/sda5 (Abbildung 4).

Abbildung 4: Möchten Sie es ganz genau wissen, lassen Sie sich von der SGD sämtliche auf der Platte liegenden Grub-Konfigurationen anzeigen.

Abbildung 4: Möchten Sie es ganz genau wissen, lassen Sie sich von der SGD sämtliche auf der Platte liegenden Grub-Konfigurationen anzeigen.

Durch Anwahl des entsprechenden Menüpunkts booten Sie nun direkt in die vor der Installation von Windows 8 aktive Systempartition – in unserem Beispiel Ubuntu auf /dev/sda2. Hier starten Sie ein Terminal und melden sich darin als administrativer Benutzer root an. Nun sind Sie nur noch zwei kurze Befehle von der funktionierenden Multiboot-Lösung entfernt.

Im ersten Schritt installieren Sie die Grub-Kernkomponenten wieder im MBR. Dazu dient der Befehl grub-setup /dev/sda. Hier müssen Sie die Angabe /dev/sda für die erste Festplatte gegebenenfalls durch die Angabe desjenigen Devices ersetzen, auf dem Sie den Bootsektor restaurieren möchten. Anschließend rufen Sie update-grub auf, um den Bootloader eine neue Konfigurationsdatei erstellen zu lassen, welche die neue Windows-Installation gleich einschließt. Den kompletten Ablauf des Vorgangs für unser Beispiel zeigt Listing 1.

Listing 1

# grub-setup /dev/sda
# update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.2.0-29-generic-pae
Found initrd image: /boot/initrd.img-3.2.0-29-generic-pae
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 8 (loader) on /dev/sda4
Found Debian GNU/Linux (wheezy/sid) on /dev/sda5

Gegebenenfalls können Sie nun manuell [4] oder mit einem Tool wie dem Grub2-Editor [5] noch etwas Prettyprinting in den Grub2-Konfigurationsdateien vornehmen, um den Bootscreen attraktiver zu gestalten. Ansonsten starten Sie den Rechner jetzt einfach neu und finden sich dann im gewohnten Bootmenü wieder, das jetzt auch einen Eintrag für das frisch installierte Windows 8 umfasst.

Insel der Seligen

Dank der Fähigkeiten von Grub2 stellt der umgekehrte Fall, das Nachrüsten von Linux auf einem mit Windows 8 vorinstallierten Rechner, Sie vor keinerlei Probleme. Die Installer aller gängigen Distributionen bieten gegebenenfalls an, ehedem von Windows belegten Platz für Linux freizuschaufeln. Zudem läuft Linux ebenso gut von einer logischen Partition wie von einer primären, sodass es leicht fällt, ein Plätzchen für das Betriebssystem zu finden. Der inzwischen zum Standard avancierte Bootloader Grub2 bindet beim Einrichten von Linux die Windows-Partition gleich automatisch in sein Bootmenü mit ein.

Allerdings dürfte spannend werden, wie lange sich Linux-Anwender noch auf dieser Insel der Seligen sonnen dürfen. Ungemach steht bereits vor der Tür: Mit dem von Microsoft für Windows-8-PCs obligatorisch gefordertem UEFI Secure Boot steht potenziell Ärger ins Haus. Das liegt nicht zuletzt daran, dass zwischen den verschiedenen Distributionen nur wenig Einigkeit darüber besteht, wie diese Funktion wohl am besten für Linux zu implementieren sei.

UEFI Secure Boot

Immerhin hat sich nun endlich die Linux Foundation der Sache angenommen, wie LinuxUser es bereits vor einem halben Jahr vorgeschlagen hatte [6]. Damit scheint derzeit zumindest das Problem der Schlüsselverwaltung für UEFI Secure Boot einer Lösung nahe. Allerdings gehen die faktischen Lösungsansätze der Entwickler von Fedora, OpenSuse und Ubuntu, die sich alle derzeit intensiv mit dem Problem beschäftigen, nicht unbedingt in die selbe Richtung. Ein recht viel versprechendes Konzept hat Fedoras UEFI-Spezialist Matthew Garrett [7] auf Anregung der Suse-Entwickler [8] immerhin bereits teilweise in Code umgesetzt.

Die vorgeschlagene Lösung basiert auf einem dreistufigen Ansatz: Der mit dem Microsoft-Schlüssel oder einem anderen Plattform-Key (PK) signierte Bootloader-Stub “Shim” (das englische Wort bedeutet soviel wie Beilagscheibe oder Distanzblech) lädt den eigentlichen Bootloader Grub2 nach. Dabei prüft Shim, durch den Key Exchange Key (KEK) autorisiert, die Validität des Bootloaders anhand von Machine Owner Keys (MOKs), die in einer Datei lagern (Abbildung 5). Dies ermöglicht, jederzeit neue MOKs in der entsprechenden Datenbank zu hinterlegen, sodass jede Distribution UEFI Secure Boot verwenden kann, ohne sich dazu von Microsoft eine Signatur holen zu müssen.

Abbildung 5: Das von Suse-Entwicklern vorgeschlagene und vom Fedora-Spezialisten Matthew Garrett bereits teilweise implementierte Verfahren soll jeder Distribution den Zugang zu UEFI Secure Boot ermöglichen. (Bild: Suse)

Abbildung 5: Das von Suse-Entwicklern vorgeschlagene und vom Fedora-Spezialisten Matthew Garrett bereits teilweise implementierte Verfahren soll jeder Distribution den Zugang zu UEFI Secure Boot ermöglichen. (Bild: Suse)

Doch noch ist nichts in Stein gemeißelt, was das Linux-Bootkonzept für die nächste Generation von PCs angeht. Das Problem wird ohnehin frühestens mit dem diesjährigen Weihnachtsgeschäft akut, wenn die Industrie die ersten Rechner mit Windows 8 und aktiviertem UEFI Secure Boot ausliefert. Da Microsoft in den Spezifikationen für das Windows-8-Label ohnehin vorschreibt, dass die Secure-Boot-Funktion sich deaktivieren lassen muss, steht nicht zu befürchten, dass sich Linux nicht mehr installieren ließe – es bootet dann eben ohne diese Funktion.

Fazit

Fürs Erste leben also Windows 8 und Linux weiterhin wie bisher kommod nebeneinander auf der Rechnerfestplatte. Wirkliche Neuerungen bei den Bootverfahren bringt frühestens die nächste oder gar übernächste Runde im Release-Zyklus der großen Distributionen; auch Hardware, mit der sich Features wie UEFI Secure Boot und deren Auswirkungen testen ließen, ist derzeit schwer zu beschaffen. Wir bleiben aber am Ball und hoffen, Ihnen in einer der nächsten Ausgaben mehr und konkreteres zum Thema verraten zu können. 

Infos

[1] Grub2 reparieren: http://wiki.ubuntuusers.de/GRUB_2/Reparatur

[2] Super Grub Disk: http://www.supergrubdisk.org

[3] System Rescue CD: http://www.sysresccd.org

[4] Grub2-Workshop: Andreas Bohle, “Ladehemmung”, LU 01/2010, S. 74, https://www.linux-community.de/19918

[5] Grub2-Editor: Tim Schürmann, “Neues Design”, LU 07/2012, S. 80, https://www.linux-community.de/25923

[6] UEFI Secure Boot: Jörg Luther, “Nicht schon wieder”, LU 07/2012, S. 3, https://www.linux-community.de/26369

[7] Blog von Matthew Garrett: http://mjg59.dreamwidth.org

[8] “SUSE and Secure Boot: The Details”: https://www.suse.com/blogs/uefi-secure-boot-details/

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 12/2012 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben