Linux aus Windows-Bootmenü starten

Ungeachtet über Sinn oder Unsinn, ist es möglich aus dem Windows-Bootmenü heraus ein Linux zu starten.
Wichtig ist hier, dass bei der Installation nicht in den Bootsektor des bestehenden Windows geschrieben wird.

Voraussetzung ist ein installiertes Windows und die nötigen Partitionen fürs Linux. In diesem Beispiel ist es eine erweiterte Partition mit 2 Logischen Partitionen (Linux-System und Swap)
win-tux-boot_01
Die Linux-Installation verläuft ganz normal (in diesem Beispiel Debain 8). Aufpassen muss man nur bei der Festplattenkonfiguration und beim Erzeugen des Bootmanagers.

Festplattenkonfiguration:
Da es schon 2 Partitionen gibt, binde ich die 1. logische Partition (sda5) als Root-Verzeichnis und die 2. logische Partition (sda6) als Swap ein.
win-tux-boot_02

Bootmanager:
Bei der Installation von Grub wähle ich, bei der Frage ob Grub in den MBR installiert werden soll, „Nein“ aus und gebe das Gerät von Hand ein.
Da sich unser Linux auf der 1. logischen Partition befindet, möchte ich auch Grub auf diese Partition installieren und gebe deshalb hier „/dev/sda5“ ein.
win-tux-boot_03 win-tux-boot_04
Die Installation kann jetzt wie gewohnt abgeschlossen werden.

Jetzt muss der Grub-Bootsektor gesichert werden. Am einfachsten bootet man mit einer Live-Linux-CD, wie z.B.: Knoppix, LinuxMint, PartedMagic etc etc.
Wichtig wäre, dass das Schreiben auf NFTS-Partitionen möglich ist.
1. Schitt
Zuerst binde ich die Windowspartition ein, in meinem Fall (mit Parted Magic) wird diese Partition durch einen Doppelklick unter /media/sda2-ata-VBOX-HARDDISK_VB eingebunden.
2. Schritt
In einem Terminal kopiere ich jetzt den Bootsektor in eine Datei, die ich Debian.bin nenne.

(In den ersten 512 Bytes stehen die Informationen für den (BIOS konformen) Bootsektor.)
win-tux-boot_05
Jetzt starte ich wieder das installierte Windows und bearbeite des Bootmenü mit bcdedit (benötigt eine Konsole mit Administratorrechten).
Zuerst erzeuge ich einen Booteintrag mit der Bezeichnung „Debain 8“ mit der Definition als Bootsektor

Als Ergebnis gibt das System den Identifier für diesen Eintrag zurück. Dieser ist wichtig und wird für die weiteren Schritte benötigt. Am Besten, man kopiert sich diese Zeichenkette in die Zwischenablage.
Als nächstes muss der Pfad und das Laufwerk zum kopierten Bootsector des Linux-Systems angegeben werden. In unserem Fall ist es das Laufwerk C: und die Datei heißt Debian.bin

Damit der Booteintrag auch erscheint, füge ich ihn mit dem Befehl

am Ende des Bootmenüs ein.
Eine Kontrolle mit bcdedit zeigt den erzeugten Eintrag.
win-tux-boot_06 win-tux-boot_07 win-tux-boot_08 win-tux-boot_09 win-tux-boot_10
Wird jetzt das System neu gestartet, erscheint der Linux-Boot Eintrag im Windows Bootmenü.
win-tux-boot_11
Wird der Eintrag „Debian 8“ ausgwählt, startet Grub mit dem typischen Grub-Menü. Der Eintrag für das Windows im Grub-Menü wurde bei der Installation von Debian mit erzeugt und verweist auf den Standard MBR. Die Auswahl des Windows-Systems im Grub-Menü würde somit zurück zum Windows-Bootmenü springen.
win-tux-boot_12
Etwas eleganter wäre die Sache, wenn man eine eigene Partition für /boot erzeugen würde. Somit wäre der Bootsector des Grub nicht in der Root-Partition des Linux-Systems geschrieben, die Funktion ist aber bei jeder Variante die Gleiche.