Wczoraj w nocy z racji wszechogarniającej nudy postanowiłem zainstalować gruba pozbywając się lilo zarazem. Cała operacja jest krótka, prosta i przyjemna.
Zaczniemy od pozbycia się lilo:
# cp /etc/lilo.conf /root/lilo.conf && emerge -C lilo
Jak widać przed usunięciem lilo skopiowałem config do katalogu roota, lepiej to zrobić gdyby coś poszło nie po naszej myśli :) Teraz czas na instalacje i konfiguracje gruba:
# emerge grub && vim /boot/grub/grub.conf
Oczywiście konfiguracje powinieneś dostosować do Twoich warunków, jednak nie jest to ani trudne ani skomplikowane. Przykład mojej konfiguracji:
# Która pozycja ma być uruchamiana domyślnie. 0 oznacza pierwszą, 1 drugą itd.
default 0
# Konfiguracja Gentoo
title=Gentoo Linux
# Partycja na której znajduje się obraz jądra (lub system operacyjny).
# W moim przypadku jest to /dev/hda5
root (hd0,4)
# Jeżeli nie używasz fbsplasha usuń wpis za to odpowiedzialny (zaznaczony kursywą).
# Pamiętaj, że ścieżka do kernela musi być adekwatna do Twojej sytuacji!
kernel /boot/vmlinuz root=/dev/hda5 video=vesafb:ywrap,mtrr,1024×768-32@70 splash=silent,theme:livecd-2006.0 console=tty1
initrd /boot/fbsplash-livecd-2006.0-1024×768
# Następne trzy linie są potrzebne tylko gdy będzie uruchamiany również system Windows.
# W moim przypadku Windows znajduje się na /dev/hda1.
title=Windows XP
rootnoverify (hd0,0)
chainloader +1
Grub przyjmuje numeracje od 0, czyli /dev/hda1 to (hd0,0) a /dev/hda5 to (hd0,4). W numeracji pomijane są napędy optyczne (CDROM, DVDROM itp). Oczywiście podział dysku u Ciebie może być inny, w razie wątpliwości skontaktuj się ze mną.
Ostatnią czynnością jaką musisz wykonać to instalacja gruba w obszarze rozruchowym dysku (MBR).
grub-install --root-directory=/boot /dev/hda
To na tyle! Jak widać migracja z lilo na gruba jest trywialna, pamiętaj tylko by dostosować plik konfiguracyjny do Twojego podziału partycji. W razie pytań - postaram się pomóc na Jabberze.
Przydatne linki:
A w czym grub jest lepszy od lilo? Szczerze mówiąc lilo mam odkąd pamiętam a gruba nigdy na oczy nie widziałem.
Ma większe możliwości.
1. Nie trzeba go przeładowywać za każdym razem gdy instalujesz nowy kernel.
2. Można wejść w tryb edycji podczas wybierania systemu (naciskając e), przydatne gdy chcemy dodać np. jakiś parametr dla kernela.
3. Można ustawić kilka jąder dla jednego systemu (czy jakoś tak) i gdy jedno zawiedzie, odpalić z drugiego (automatycznie).
Mniej więcej.
tzn. grub jest kombajnem - o ile wszystko jest OK, to nie ma większej różnicy między grubem a lilo (pomijając takie bajerki jak możliwość przeładowywania definicji menu w locie (można zrobić coś w rodzaju hierarhicznego menu) czy elastyczniejszy system ustawiania haseł dostępu). Grub “rozumie” filesystemy, można z poziomu bootloadera podejrzeć sobie np. /etc/fstab (ma wbudowane polecenie “cat”), ma tab-completion i sam pokazuje jakie dyski widzi w systemie, jakie są na nich partycje etc. Można nim nawet zakładać i kasować partycje, zrobić “halt” etc. Ot, taki Emacs bootloaderów ;)
rasheed, jak tym jądrami żąglować ?
Jakiś specialny wpis do menu.1st ?
“grub jest kombajnem”
Nic ująć, a czy dodać… Hm: Grub, prócz Linuksa, bez problemu bootuje Solarisa, *BSD, Winśmiecia, Hurda… i pewnie jeszcze wiele innych, o których nie mam pojęcia ;) Może i LiLo też coś z tego potrafi, ale od kiedy przesiadłem się na Gruba’sa to nie chce mi się tego sprawdzać :]