GRUB - manager systemów

GRUB /Grand Unified Bootloader/ jest programem rozruchowym za pomocą, którego można uruchomić wiele systemów operacyjnych tj. Windows, Linux, FreeBSD, DOS i inne.

078ffaa96c740cf055b6f18e276a85cc

 

Grub

GRUB odczytuje różne systemy plików zarówno FAT jak i ext2, MINIX, FAT, FFS, ReiserFS, XFS i JFS. Dzięki temu istnieje możliwość wczytania jądra danego systemu operacyjnego.

GRUB posiada możliwość ładowania systemu bezpośrednio z danego urządzenia, współpracuje z zabezpieczeniami (hasła do systemów) oraz ma możliwość uruchomienia powłoki (Linux).

Obecnie w fazie rozwoju znajduje się jego 2 wersja. Zmiany dotyczą m.in. takich obszarów jak:

  • Obsługa skryptów (funkcje warunkowe, pętle, zmienne )
  • Graficzny interfejs
  • Dynamiczne ładowanie modułów w celu rozszerzenia się w momencie uruchomienia, a nie na czas budowy
  • Przenoszenia dla różnych architektur
  • Dodatkowe wsparcie dla kodu ASCII
  • Manager zarządzania pamięcią
  • Tryb awaryjny
  • Dużą zaletą GRUB-a jest możliwość zmiany konfiguracji startowej z poziomu działającego bootloadera. Po uruchomieniu bootloadera wystarczy przejść w tryb edycji (klawisz E). Za pomocą edytora można dokonywać odpowiednich zmian i uruchomić system.

    Dyski – oznaczenie

    GRUB za pomocą Biosu sprawdza dostępne dyski i numeruje je zaczynając od 0 czyli mając dwa lub więcej dysków otrzymujemy takie nazwy jak hd0, hd1,hd2,0,hd2,1 …
    Druga liczba po przecinku to partycja występująca na dysku.

     

    Konfiguracja

    Konfigurację Gruba przeprowadzamy w pliku zlokalizowanym w /boot/grub/menu.lst. Ważne jest, aby po jego każdej zmianie dokonać jego reinstalacji w MBR/bootsektorze dysku poleceniem sudo update-grub.

    Konfiguracja GRUB-a dzielimy na:

  • Główną
  • Obrazów – każdy system operacyjny
  • Poniżej przedstawiona została przykładowa konfiguracja:
    (Pogrubioną czcionką wyróżniliśmy sekcję główną)

    default=0
    timeout 15


    title Linux System Operacyjny
    root (hd0,0)
    kernel /boot/vmlinuz root=/dev/hda1
    initrd /boot/initrd
    savedefault

    timeout w sekcji głównej to czas w sekundach oczekiwania na reakcję/wybór systemu przez użytkownika.
    W przypadku kilku obrazów pierwszy obraz wymieniony w pliku jest domyślny. Aby to zmienić wystarczy dopisać np. default 0 (pamiętaj o numeracji od 0 !).

    title to jego etykieta, nazwa systemu wyświetlana w menu managera. Możemy używać polskich znaków gdyż nie wpływa to na działanie programu.
    root(hd0,0) wskazuje partycję, na której GRUB będzie szukał swoich plików konfiguracyjnych ( katalog /boot). Co ważne – nie zawsz jest to partycja główna !
    kernel i initrd to ścieżki dostępu do plików jąda i ramdysku uruchamianego przy starcie (brak wskazania konkretnej partycji oznacza odwołanie do hd0,0).
    savedefault jest opcją zapamietania wyboru i automatycznego podświetlenia przy następnym uruchomieniu.


    Instalacja

    Aby zainstalować Grub (system Linux) musimy uruchomić program grub, wskazać lokalizację plików Gruba (root) a następnie wydać polecenie setup z właściwym parametrem np. setup (hd0)

    Jak dodać inne systemy operacyjne do menu Gruba?
    Jeżeli mamy zainstalowany drugi system operacyjny np. Windows na 2 partycji dysku to do pliku /boot/grub/menu.lst dopisujemy:

    title WindowsXP/drugisystem
    rootnoverify (hd0,1)
    chainloader +1

    W przypadku dodawania systemów operacyjnych Windows nie należy określać lokalizacji jądra systemu tylko partycję z windowsowym programem bootującym.

    Istnieje możliwość pracy konsoli w większej rozdzielczości. Zmiany takiej dokonujemy wprowadzając parametr vga=0x303 (numer trybu graficznego dla danej rozdzielczości i głębi koloru) do linii dotyczącej kernela. Poniżej tabela z wykazem dostępnych opcji.

    Głębia koloru 640x480 800x600 1024x768 1280x1024
    256 (8 bit) 0x301 0x303 0x305 0x307
    32k (15 bit) 0x310
    0x313 0x316 0x319
    65k (16 bit) 0x311 0x314 0x317
    0x31A
    16M (24 bit) 0x312 0x315 0x318
    0x31B

    Wpisując vga=ask jądro podczas startu pozwala wybrać jeden w dostępnych trybów poprzez wyświetlenie listy.

    Przykładowy pełny plik konfiguracyjny:

    default=0
    timeout 15

    title Linux, kernel 2.4.2-1-386
    root (hd1,0)
    kernel /boot/vmlinuz-2.4.2-1-386 root=/dev/sda1
    initrd /boot/initrd.img-2.4.2-1-386
    savedefault
    boot

    title WindowsXP/drugisystem
    rootnoverify (hd1,1)
    chainloader +1



    Awaria Gruba

    Gdy Grub nie działa prawidłowo i udostępniona jest tylko linia komend można wydać polecenie:
    boot rootnoverify (hd1,1) chainloader +1 boot

    Gdy na dysku mamy Windows oraz Linux i ponownie zainstalujemy Windowsa to nie będziemy mogli uruchomić Gruba, gdyż MBR został zajęty przez bootloader windowsowy.
    Ważne ! Nie oznacza to, że system Linux został skasowany.
    Aby przywrócić menu managera należy uruchomić Linux z płyty instalacyjnej i gdy wystaruje wpisać linux rescue. Następnie należy wpisać poniższe polecenia:
    1) chroot /mnt/sysimage
    2) grub-install /dev/hd0      <- za hd0 należy podać dysk z plikami Gruba
    3) exit
    4) exit

     

    dodane: 2010-02-17 15:43
    Uprzejmie prosimy o powołanie się na serwis e-wynajem.com jako źródła uzyskanej informacji.
    © 2012 Global Rental. E-WYNAJEM.COM