Uzecu primer da postoji samo jedan disk i na njemu dve particije - windows i linux.
Svaka butabilna particija sadrzi svoj boot blok - windows svoj, linux svoj. Svaki OS prilikom instaliranja u njega stavi malo parce koda koje poziva OS loader. A na celom disku ukupno zatim postoji jedan master boot record. U njemu se nalazi particiona tabela i nekih 440 bajtova koda. Kada BIOS zavrsi svoj POST, po default zatim poziva taj kod u MBR-u na prvom disku u sistemu (do sada bio C:, ali novi BIOSi daju da se bira), koji pregledava tu particionu tabelu i u njoj nalazi koja particija je proglasena za sistemsku, tj. butabilnu. Poziva dalje boot blok te particije i time pocinje ucitavanje OS-a.
Dakle, lilo zameni samo taj kod u MBR-u. Ukoliko ga imas instaliranog i izaberes windows, onog momenta kada lilo ucita boot blok windowsa u memoriju, njegov posao je gotov. Lilo odnosno linux prilikom instalacije ni ne pipne windows particiju - ukoliko windows krene da se dize (ispise bilo sta tipa loading windows), lilo vise nista ne radi i ukoliko dodje do zaglavljivanja u sred dizanja, to je samo do tog windowsa. Ukoliko lilo zezne stvar, butovanje windowsa se zaglavi vec na onom samom meniju (ili : promptu ispise "LI" ili nesto slicno) - dakle, pre nego sto je windows uopste dao ikakav znak zivota i postojanja.
Postojao je pre koju godinu problem sa starim verzijama lilo-a, kada lilo nije umeo dobro da "dohvati" particiju koja je pocinjala iza stare poznate granice od 8GB iliti 1023-eg sektora. Cak i Partition Manager javlja upozorenje "this partition might not be bootable" ukoliko pomeris tu particiju 'iza' prvih 8GB.
Drugi potencijalni problem je ovaj parametar "linear", koji je takodje poceo da se koristi od pojave vecih diskova. Radi se o mapiranju fizickih adresa (cylinder/head/sector) u logicke (spremaju se u linuxu u fajl /boot/map), tako da prikikom ucitavanja lilo moze opet da preracuna te logicke adrese nazad u fizicke. Ukoliko ti disk u BIOS-u stoji detektovan kao "normal" ili "chs" tip, onda linear ne bi trebao da smeta. Medjutim, ukoliko je disk detektovan kao LBA (95% verovatnoce), onda je linear viska i treba ga zameniti sa "lba32"; i dalje se radi o mapiranju adresa, ali na razlicit nacin (linear ne tretira disk kao kombinaciju cilindara i sektora, nego kao jednu neprekidnu spiralnu traku).
Ukoliko se desi da lilo nije prepoznao windows particiju, vrlo je jednostavno ukljuciti je u lilo. Edituje se lilo.conf i doda na kraju blok:
[code:1]
other=/dev/hda1
optional
label=windows
[/code:1]
Ovo "windows" je tekst koji lilo ispise u meniju. Ukoliko hoces da ti se po defaultu dize windows umesto linuxa, onda se ovaj label stavi na pocetku lilo.conf fajla (dakle "default=windows" umesto "default=linux"). Jedino sto ovde moze da varira od masine do masine je podatak o particiji na kojoj se nalazi windows (ovde kao primer /dev/hda1). Diskovi u linuxu stoje ovako:
/dev/hda - primary master
/dev/hdb - primary slave
/dev/hdc - secondary master
/dev/hdd - secondary slave
Ukoliko se ima jos neki kontroler (promise, hpt, itd) onda se dalje nastavlja sa:
/dev/hde - primary master (drugi kontroler)
/dev/hdf - primary slave (drugi kontroler)
itd.
Jedino sto ti jos treba je broj particije na tom disku. Kada znas koji disk ti treba, nista jednostavnije - pokrenes (linuxov) fdisk sa diskom kao parametrom (ovde u primeru "fdisk /dev/hda") i pritisne se "p" za izlistavanje svih particija na tom disku ("q" je izlaz, a "h" je help).
lilo.conf se snimi i ponovo se pokrene "lilo" da bi izmenjenu konfiguraciju ponovo smestio u MBR. Ukoliko lilo.conf sadrzi greske, falican lilo se nece smestiti u MBR, vec ce biti ispisan opis greske.
I to je cela prica - vazi i za win9x i za 2k i...
Komanda reboot u linuxu i nije nista drugo nego link (iliti "shortcut" u win zargonu) na komandu halt. Deinstalacijom drajvera za modem nisi mogao da uprskas boot informaciju, ukoliko nisi brisao nista po /boot direktorijumu.
Partition Magic ne zeli da lilo ili grub idu u MBR, zato da bi taj posao obavljao njihov Boot Magic (valjda je ovo dovoljno jasno :d ). Dakle, mozes lilo da stavis u boot record linux particije, ali ti onda treba opet neki boot manager koji bi se stavio u MBR i dao ti da biras OS-ove -> da bi do liloa uopste dosao. Naravno, neko bi mogao da zapita, sta ce mi onda lilo tamo uopste? Zato sto moze tako da se konfigurise linux da ponudi vise razlicito konfigurisanih kernela (za razlicite potrebe). Onda se startike boot manager u MBR-u, izaberes linux, startuje se zatim lilo i ponudi ti razlicite kernele za boot samog linuxa.
Ne postoji nikakav problem sa uklanjanjem lilo-a iz MBR-a; najobicnija windows/dos komanda "fdisk /mbr" uklanja lilo boot kod i zamenjuje ga standardnim windowsovim (ne dirajuci particije) fiksnim kodom koji ume da digne samo windows.