You are on page 1of 2

FAQ: Multiboot mit Linux | c't http://www.heise.de/ct/hotline/FAQ-Multiboot-mit-Lin...

Archiv-Suche Newsletter News mobil RSS

c't > Hotline & FAQ

Thorsten Leemhuis c't 4/11

FAQ: Multiboot mit Linux


Grub w iederherstellen

Bei der Neuinstallation von Windows ha t dieses den im M BR installierten Boot-Loader von Linux überschrieben. Wie stell e ich Grub wieder her, um
Linux starten zu können?

Die Installationsmedien einiger Distributionen bieten Mechanismen, um den Boot-Loader neu zu installierten. Grub lässt sich aber auch mit Linux-Live-Medium
w iederherstellen, indem man per „Change Root“ in das installierte Linux hineinw echselt. Bei einem auf /dev/sda5 liegenden Linux sind dazu die folgenden Schritte nötig:

mount /dev/sda5 /mnt


mount -t proc none /mnt/proc
mount -o bind /dev /mnt/dev
chroot /mnt

Wer eine separate Boot-Partition angelegt hat, muss zusätzlich noch ein mount /boot/ ausführen. Der Befehl

grub-install /dev/sda

installiert anschließend den Boot-Code von Grub in den MBR (Master Boot Record) des ersten von den SCSI- und ATA-Treibern des Kernels gefundenen Datenträger
(/dev/sda).

Window s-Boot-Loader restaurieren

Nach Linux-Versuchen mit einer Grub-Installation im M BR ha be ich Linux wieder gelöscht. Dazu habe i ch dessen Partition in der
Datenträgerverwaltung entfernt und den freien Platz einer Windows-Partition zugewiesen. Jetzt startet Windows nicht mehr, da der Grub mit ei ner
Fehlermeldung den Startvorgang unterbricht. Wie stelle ich den Boot-M anager von Windows 7 wieder her?

Das Einspielen von neuem MBR-Boot-Code sollte diesen Fall korrigieren, da Grub nur diesen verändert hat. Starten Sie dazu ihr Window s-Installationsmedium und rufen
die Computerreparaturoptionen auf. Öffnen Sie eine Eingabeaufforderung und geben den folgenden Befehl ein:

bootrec /fixmbr

Wenn Sie kein Installationsmedium des eingesetzten Window s zur Hand haben oder dieses keine Reparaturoptionen bietet, können Sie auch mit anderen Window s-
Versionen oder sogar mit Linux neuen Boot-Code in den MBR schreiben. Bei der Live-CD von Ubuntu 10.10 platziert etw a der als Root auszuführende Befehl

cat /usr/lib/syslinux/mbr.bin > /dev/sda

neuen Boot-Code im MBR des Datenträgers /dev/sda.

Linux m it Window s-Boot-Manager starten

Bei jeder Windows-Installation wird der über den M BR install ierte Grub meines Li nux überschrieben. Kann ich das System a uch so einrichten, da ss
der Boot-M anager von Windows 7 mein Linux-System startet?

Dazu müssen Sie die Linux-Distribution bei der Installation anw eisen, den Grub nicht in den MBR, sondern in den Boot-Sektor der Linux-Partition zu installieren – die dazu
nötigen Optionen finden sich in den Installern der großen Distributionen bei der Datenträger- und Boot-Konfiguration. Da das BIOS den Boot-Loader dort nicht erreicht,
startet das gerade installierte Linux allerdings nicht. Sie müssen daher den Rettungsmodus der eingesetzten Distribution oder ein Live-Linux bemühen, um als Root den
Boot-Code von Grub auszulesen und in eine Datei zu überführen:

dd if=/dev/sda5 of=grub.img bs=512 count=1

Das „/dev/sda5“ gilt es dabei durch den Namen des Geräts zu ersetzen, in dessen Boot-Sektor Grub installiert w urde. Kopieren Sie nun die Datei „grub.img“ in das
Hauptverzeichnis der Window s-Systempartition (C:\) und starten das Microsoft-System. Rufen Sie dort als Administrator eine Eingabeaufforderung auf und geben den
folgenden Befehl ein:

bcdedit /create /d "Linux" /application BOOTSECTOR

Er liefert eine kryptische GUID zurück, die w ie diese aussehen könnte: {78c69b17-9953-11df-9267-cf4991724634}. Kopieren Sie diese GUID in die Zw ischenablage und
verw enden Sie sie bei den folgenden Befehlen anstelle des „{GUID}“:

bcdedit /set {GUID} device partition=C:


bcdedit /set {GUID} PATH \grub.img
bcdedit /displayorder {GUID} /addlast

Die ersten beiden Kommandos teilen dem Boot-Manager von Window s mit, auf w elcher Partition und in w elcher Datei es den Boot-Code von Grub findet; erst der letzte
Befehl legt den Menü-Eintrag an, über den Sie Grub beim nächsten Start ausw ählen können, um das installierte Linux zu starten. Die Datei grub.img sollten Sie zur
Sicherheit an einem anderen Ort ablegen, um sich einen Teil der Prozedur bei einer neuen Window s-Installation zu sparen.

Mit Hilfe von Bcdedit können Sie später die Einträge auflisten und einzelne löschen:

bcdedit /enum all


bcdedit /delete {GUID}

Bevorzugen Sie grafische Lösungen, können Sie auf die Freew are EasyBCD zurückgreifen, auf die der Link zum Artikel verw eist.

Kernel-Einträge unte r Ubuntu löschen

Ich spiele unter Ubuntu regelmäßig Upda tes ein. M it jedem ak tualisierten Kernel wächst das Boot-M enü um zwei Einträge. Ich habe einige durch
Löschen aus der Datei /boot/grub/grub.cfg entfernt – nach dem nächsten Kernel-Update tauchten sie wieder auf. Wie werde ich sie dauerhaft los?

Ihre Änderungen sind nicht von Bestand, w eil beim Installieren neuer Kernel oder beim Aktualisieren der Grub-Konfiguration ein Skript läuft, das für jeden der installierten
Ubuntu-Kernel zw ei Boot-Einträge anlegt. Durch Deinstallieren der alten Kernel können Sie das unterbinden.

1 von 2 03.03.2011 22:10


FAQ: Multiboot mit Linux | c't http://www.heise.de/ct/hotline/FAQ-Multiboot-mit-Lin...

Vor dem Runterschmeißen sollten Sie den neuesten, in der Boot-Reihenfolge typischerw eise ganz oben stehenden Kernel einige Tage einsetzen, um sicherzugehen,
dass er korrekt arbeitet. Außerdem gilt es, seine exakte Bezeichnung herauszufinden – etw a über die Angabe auf dem ersten Reiter der Systemüberw achung von
Gnome oder den Kommandozeilenbefehl uname -r. Spuckt der etw a 2.6.35-22-generic aus, sollten Sie das Paket linux-image-2.6.35-22-generic nicht antasten. Die
anderen mit „linux-image-2.6“ beginnenden Pakete können Sie jedoch mit Hilfe des Paket-Managers Synaptic deinstallieren. Wer fürchtet, dabei versehentlich den
laufenden Kernel zu verbannen, delegiert das Entfernen an Programme w ie „Ubuntu Tw eak“, dessen „Package Clearer“ entsprechende Funktionen bietet. Sie finden das
Programm über den Link am Ende des Artikels; er verw eist auch auf einige Skripte, die ältere Kernel von der Platte vertreiben. (thl)

www.ct.de/1104168 [http://w w w .ct.de/1104168]

Version zum Drucken [http://www.heise.de/ct/hotline/FAQ-Multiboot-mit-Linux-1172808.html?v iew=print] | Per E-M ail v ersenden [http://www.heise.de/ct/hotline/FAQ-Multiboot-mit-Linux-
1172808.html?v iew=mail] | Heft bestellen [http://www.heise-shop.de/Produkte/Zeitschrif ten/ct/Einzelhef te]

Perm alink: http://heise.de/-1172808 [http://heise.de/-1172808]

Kom m entieren [http://www.heise.de/c t/hotline/foren/S-FAQ-Multiboot-mit-Linux/forum-192696/list/]

Leserbrief schreiben [mailto:leserbrief@c tmagazin.de?subjec t=c 't%204%2F11%20-%20FAQ%3A%20Multiboot%20mit%20Linux&


body=Anonyme%20Zusc hriften%20koennen%20wir%20nic ht%20veroeffentlic hen.%20Bitte%20nennen%20Sie%20deshalb%20Ihren%20vollstaendigen%20Namen.%20Vielen%20Dank!]

Das aktuelle Heft ist jetzt im Handel erhältlich.


Ältere Artikel können Sie über unser Zeitschriften-Archiv [http://www.heise.de/kiosk/archiv/ct/] bestellen.

619435 Copyright © 2011 Heise Zeitschriften Verlag Content M anagement by InterRed


International: The H, The H Security, The H Open Source, heise online Polska, heise Security Polska, heise Open Source Polska, heise Networks Polska

2 von 2 03.03.2011 22:10

You might also like