vermin.eu.org

Specjalista IT na tru^Hopie

Entries Comments



bootowanie linuxa z nt loadera

2 November, 2005 (13:58) | boot, debian(ized), linux | By: vermin

Na stacji roboczej na której rządzą windowsy i to one są tam zazwyczaj przeinstalowywane postanowiłem w ramach alternatywy zainstalować system debiano-podobny, czyli ubuntu breezy badger z października 2005. Ponieważ jak zazwyczaj to bywa przy reinstalacjach Windowsa nadpisuje się MBR (i to niekoniecznie za pomocą fixmbr), więc musiałbym cały czas odtwarzać pierwotną zawartość sektora z grubem. Wolałem więc skorzystać z możliwości NT Loader’a i spod niego uruchamiać linuxa.
Do tego potrzebny był mi sektor startowy partycji, na której podczas instalacji zainstalowałem grub’a, czyli jakieś /dev/hdax. Oczywiście w przypadku podziału dysku na / oraz /boot to właśnie ta ostatnia jest interesująca. Dlaczego był mi potrzebny? Ponieważ 512 bajtowy master boot record ma w sobie przede wszystkim 446 bajtowy programik bootstrap pozwalający na uruchomienie właściwego boot loadera. Dzięki temu uruchomienie spod NT Loadera bootstrapu linuxowego powoduje uruchomienie grub’a i możliwość bootowania linuxa. Co ciekawe, możemy ponownie wrócić do bootowania Windowsa, jeśli zmienimy plany.
Jak zdobyć te upragnione 512 bajtów? Najprościej użyć jakiejś dystybucji live albo trybu naprawczego instalatora. Po zbootowaniu systemu wystarczy użyć dd if=/dev/hdax of=plik.bin count=1 bs=512. W ten sposób dostaniemy 512 bajtowy plik.bin zawierający zawartość MBR. Żeby sprawdzić, czy plik jest poprawny możemy go obejrzeć hexdumpem i sprawdzić, czy ostatnie dwa bajty zawierają sygnaturę 0×55AA.
Teraz pozostaje już tylko przegrać plik.bin na partycję windowsową a w ukrytym, systemowym pliku %SYSTEMDRIVE%\boot.ini umieścić linię x:\plik.bin=”Linux”.
Warto dodać, że niestety każda zmiana w grubie (np. dodanie nowego jądra), wymaga utworzenia nowego plik.bin
A już na sam koniec wspomnę tylko, że dzięki dd można utworzyć backup zwykłego sektora startowego i w razie potrzeby, zamieniając wartościami wejście z wyjściem (if i of), odtworzyć uszkodzony boot sector. A także backup dysku, a także…

Write a comment