Linux mithilfe des Windows-Startmenüs auswählen
Viele Windows-Benutzer sind verunsichert, wenn sie Grub statt
des gewohnten Windows-Startmenüs sehen. Also nehmen wir doch
einfach Linux als zusätzliche Auswahl in den Microsoft-Bootloader
auf.
Eine oft lästige Situation: Auf einem Windows-Rechner wird
zusätzlich Ubuntu installiert. Grub ersetzt dabei, um den
Benutzer nicht mit Fragen zu belästigen, den Windows-MBR
durch einen eigenen Bootblock (wobei er allerdings im Unterschied
zu Windows kooperativ ist und die bestehenden Betriebssysteme
in sein Menü integriert). Will man diesen Bootblock wieder
loswerden (Linux entfernen oder andere Starttechnik verwenden)
oder muss Windows neu installieren (dabei entfernt Windows das
Linux Bootmenü komplett), ist guter Rat teuer.
Wir öffnen ein root-Terminal und kontrollieren, wo denn
die Linux-Systempartition sitzt.
root# rdev
Das ergibt bei mir /dev/hda10
In Grub wird mit Null zu zählen begonnen also ist Linux-hda
die Grub-Festplatte 0 und die Linux-Partitionsnummer 10 heißt
in Grub 9. hda10 = (hd0,9)
Alternativ schaut man sich in Grubs /boot/grub/menu.lst
den Menüeintrag für den Linux-Start an und sucht die
Zeile für root.
Nun schreiben wir den GrubBootblock nicht in den MBR, sondern
einfach in irgendeine Partition. Windows ist pingelig, wir lassen
es in Frieden und wählen eine Linux-Partition. In meinem
Fall installiere ich mittels
root# grub
grub> root (hd0,9)
grub> setup (hd0,9)
grub> quit
in die Linux Systempartition.Damit ist der Booteintrag erstellt
worden.
Das war aber nur ein Zwischenschritt. Der Block soll ja Windows
zugänglich gemacht werden. Dazu kopieren wir nun die ersten
512 Byte des Blocks in eine Datei, etwa mit Namen linuxboot
root# cp if=/dev/hda10 of=linuxboot bs=512 count=1
Diese Datei kopieren wir auf Diskette oder Stick, um sie dann
in Windows wieder einzulesen. Clevere Leute haben C: als FAT-Partition
eingerichtet und können direkt dorthin kopieren.
Nun starten wir Windows. Wir speichern die neue Datei z.B. in
ein Unterverzeichnis C:\linux
Wer eine FAT-C: besitzt, kann nun die Datei boot.ini direkt editieren,
die übrigen müssen zumeist die Systemsteuerung/System/Erweitert/Starten/Systemstart/Bearbeiten
rufen und dort editieren. Wir fügen einfach einen Eintrag
dazu:
C:\linux\linuxboot=Linux
Windows-MBR restaurieren
Nun müssen wir aber noch Grub aus dem MBR entfernen. Entweder
macht man das mit dem Gratisprogramm FixMBR direkt vom Administrator-Account
aus oder mit systemeigenen Mitteln, wenn man eine Windows-Installations
CD besitzt.
Das geht dann so:
Man startet von der Original-Windows CD und drückt beim Setup
die Taste R für Reparatur. Dann wird die Windows-Systempartition
angezeigt, man wählt sie und landet in einer Konsole. Dort
gibt man falls nötig das Administratorkennwort an und führt
zwie Befehle aus:
fixmbr
fixboot
Der erste Befehl stellt den Windows-MBR wieder her und entfernt
damit Grub. Der zweite aktualisiert die dort befindliche Partitionstabelle.
Mit
exit
verlässt man die Konsole. Fertig. Ab nun erscheint Linux
als zusätzliche Auswahl beim Starten von Windows.
Vorsicht: Die OEM-Windows-CDs vieler vorinstalliert gekaufter
Computer enthalten keine Reparaturkonsole, sondern verzweigt in
ein Hersteller-spezifisches Setup-Programm. Dann muss man mit
FixMBR arbeiten.
Nachsatz:
Vorsichtige Leute sichern den MasterBootRecord vor und nach gefährlichen
Aktionen in eine Datei (Diskette z.B. /dev/fd0, Stick z.B. /dev/scd1,
Festplatte), um diesen im Bedarfsfall einfach reparieren zu können.
In Windows verwendet man das freie MbrFix. Für die erste
Festplatte:
>MbrFix /drive 0 savembr dateiname
sichert MBR und Partitionstabelle,
>MbrFix /drive 0 restore dateiname
stellt den MBR wieder her.
In Linux benötigt man keine extra Software. Da in Unix prinzipiell
alles als 'Datei' angesprochen werden kann, darf man auch den
MBR wie eine solche behandeln.
1.) schon vor der Installation von Linux eine Live-CD (Grml, Knoppix,
Suse, Ubuntu,...) starten, in der Konsole mit root-Rechten (su
oder sudo): Auslesen und abspeichern des MBR:
> dd if=/dev/hda of=Zieldatei bs=512 count=1
2.) Reparatur durch Zurückspielen des MBR:
> dd if=ObigeDatei of=/dev/hda bs=512 count=1
und das wars auch schon.
Linux kann aber noch mehr:
> dd if=Datei of=/dev/hda bs=1 count=446
stellt nur den Bootloaderbereich wieder her. (Meist ist nur das
notwendig)
> dd if=Datei of=/dev/hda bs=1 skip = 446 count=66
stellt die Partitionstabelle auf den ursprünglichen Stand
zurück
|