Boot linuxu ze zavaděče Windows
Systém Windows si po instalaci obvykle přivlastní MBR, což platí i pro poslední vydaní, tedy Windows 7. Pokud máme na počítači ještě linux v dual-bootu, stane se pak nedostupným. Je dobré na to myslet dopředu a připravit se. Kromě toho lze přinutit i boot loader z Windows, aby umožnil boot linuxu. Toto nijak nedoporučuju, ale protože je to možné a postup jsem vyzkoušel, píšu o tom v tomto zápise.
Windows boot loader potřebuje k nabootování linuxu kopii jeho boot sektoru (kde by měl být nainstalován jiný zavaděč). Tu získáme v nějakém linuxovém prostředí příkazem dd bs=512 count=1 if=/dev/sdb1 of=/mnt/flashka/bootsect.lin, kde /dev/sdb1 je hlavní linuxový oddíl a na /mnt/flashka je namountováno něco rozumného. Ideální je uložit si boot sektor dříve než nainstalujeme Windows. V opačném případě můžeme nabootovat nějakou malou distribuci buď z CD, USB klíčenky nebo třeba přes PXE a boot sektor zkopírovat v ní.
Získaný boot sektor uložíme do C:\bootsect.lin.
Win2k/XP
Do souboru c:\boot.ini přidáme nový řádek:
c:\bootsect.lin="Debian"
Win7
Spustíme příkazový řádek s právy administrátora (pravé tlačítko, …) a vytvoříme nový BCD záznam.
bcdedit /create /d Debian /application BOOTSECTOR
Program bcdedit vypíše nějaké GUID, které dále použijeme místo {ID}. Zjistit se dá také přes bcdedit /enum.
bcdedit /set {ID} device partition=C:
bcdedit /set {ID} path \bootsect.lin
bcdedit /displayorder {ID} /addlast
bcdedit /timeout 3
Po restartu by se mělo objevit klasické boot menu, s novou položkou „Debian“. Odentrujte a naběhne Grub (nebo cokoliv jiného, co bylo původně nainstalováno na linuxovém oddíle).
Poznámka: cmd.exe má zřejmě ukázat, že konzole je něco nepoužitelného a okýnka jsou mnohem lepší. Zkusit můžete třeba také Console 2 nebo PowerCmd, ale opravdu kvalitní konzole pro windows prostě není.
Děkuji moc za tento návod. Povedlo se. Skvělá instrukce a nyní jsem jako uživatel dvou OS velice spokojen se zavedením boot Fedory do zaváděče WIN7. Funguje to! Pěkný den.