PROCES ROZRUCHOWY
PROCES ROZRUCHOWY
1. Program rozruchowy w MBR.
Program rozruchowy najczęściej realizuje swoje zadanie w
dwóch etapach i dlatego składa się z dwóch osobnych
programów ładujących: -
pierwszy
jest minimalistyczny
(ograniczony rozmiarem fizycznego sektora na dysku (MBR) –
512 bajtów) i zawiera z reguły wystarczająco dużo informacji aby
załadować program drugiego etapu.
-
drugi program
obsługuje właściwe zadanie zainicjowania
rozruchu systemu operacyjnego.
2. Rodzaje programów rozruchowych dla Linuksa.
a) GRUB (ang.
GR
and
U
nified
B
ootloaders)
b) LiLo (
Li
nux
Lo
ader)
PROCES ROZRUCHOWY
PROCES ROZRUCHOWY
3. Program LiLo.
LiLo był rozwijany dużo wcześniej niż GRUB i może być
zainstalowany jako główny program rozruchowy w MBR lub w
boot sektorze aktywnej partycji.
Plik konfiguracji LiLo dzieli się na dwie zasadnicze części:
- blok opcji głównych (kolor niebieski)
- opcje obrazu (kolor czerwony)
boot=/dev/hda -
gdzie zainstalowany bootloader
(bootsector/MBR)
read-only -
wymusza start systemu w trybie tylko do odczytu
lba32 -
włącza wykorzystanie 32-bitowego adresowania
image=/boot/vmlinuz -
rozpoczyna sekcję i jednocześnie
wskazuje ścieżkę do jądra
label=Ubuntu -
to wyświetlana etykieta obrazu
root=/dev/hda1 -
wskazuje urządzenie z głównym systemem
plików
initrd=/boot/initrd -
to ścieżka do obrazu initrd (initial ramdisk)
Prompt - włącza tryb interaktywny,
timeout=100 ustawia czas oczekiwania na naszą reakcję
# lilo
Added Ubuntu * - koniec pliku
PROCES ROZRUCHOWY
PROCES ROZRUCHOWY
3. Program GRUB.
GRUB jest następcą LiLo i wykorzystuje także dwa programy
ładujące ale dodatkowo stosuje etap pośredni.
- w pierwszym etapie rozruchu ładuje program ładujący 1.5
(stage 1.5), który zawiera procedury odczytu z określonego
systemu plików, dzięki czemu możliwe jest wczytanie
tekstowego programu konfiguracyjnego programu GRUB z
głównego systemu plików Linuksa.
- program ładujący fazy 1.5 ładuje bezpośrednio z systemu
plików właściwy program ładujący drugiej fazy oraz jego pliki
konfiguracyjne.
GRUB ma swoje ustawienia w pliku: /boot/grub/menu.lst
Konfiguracja GRUB-a podzielona jest na:
- sekcję główną - są to ustawienia globalne
- sekcje obrazów - to opcje dla każdego z obsługiwanych
systemów operacyjnych
PROCES ROZRUCHOWY
PROCES ROZRUCHOWY
Zawartość GRUB-a.
title Ubuntu. Kernel 2.6.16-386 –
etykieta wyświetlana w menu
GRUB
root (hd0.0) –
identyfikuje bezwzględną lokalizację głównego
systemu plików
kernel /boot/vmlinuz-2.6.16-386 –
określa plik jądra oraz
parametry jego uruchomienia
initrd /boot/initrd.img-2.6.16-386 –
wskazuje RAM-dysk lub
systemu plików RAM, który ma być załadowany przez kernel przy
rozruchu
savedefault –
ta pozycja będzie domyślna
boot –
wskazuje programowi GRUB, że ma uruchomić system z
powyższej konfiguracji.
timeout 10
– czas na reakcję w wyborze systemu
default 0
- domyślny wybór pozycji pierwszej
Możemy też zmieniać kolory menu rozruchowego używając
kodu:
# Pretty colours
color cyan/blue white/black
– ustawienia koloru czcionki i tła
PROCES ROZRUCHOWY
PROCES ROZRUCHOWY
4. Różnice między LiLo a GRUB-em.
- inne miejsce zapisu jego konfiguracji – w LiLo jest bezpośrednio
w programie rozruchowym, a w GRUB-ie w pliku na dysku
- w LiLo po każdej modyfikacji pliku konfiguracyjnego
(/etc/lilo.conf) należy wywołać program /sbin/lilo, który zapisuje
parametry opisujące opcje menu rozruchowego i parametry
jądra w pliku boot.b, którego fizyczne położenie na dysku
zapisywane jest w MBR
- w GRUB-ie – program fazy 1.5 pozwala czytać z dysku
- w GRUB-ie – wystarczy tylko zmodyfikować plik menu.lst i
zapisać zmiany
PRZYWRACANIE GRUBA
PRZYWRACANIE GRUBA
5. Przywracanie GRUB-a po zainstalowaniu Windowsa.
Problem powstaje gdy na jednym dysku mamy i Liuksa i
Windowsa. Po reinstalacji Windowsa, nowy system usunie nam
GRUB-a z MBR-a.
Musimy wykonać następujące czynności:
• uruchamiamy system z LiveCD i stworzymy katalog
/mnt/root
• wpisujemy polecenie:
mkdir /mnt/root
• następnie:
mount –t ext3 /dev/hd
x
/mnt/root
(x-to wartść
dysku)
• możemy też wyświetlić dostępne partycje:
sudo fdisk –l
• następnie przechodzimy do poleceń GRUB-a:
sudo GRUB
• powinniśmy otrzymać:
grub>
• wyszukujemy partycję z GRUB-em:
find /boot/grub/stage1
• otrzymamy wynik np. (hd0,5)
• wydajemy polecenie ustawienia partycji głównej:
root (hd0,5)
• instalujemy GRUB-a na dysku:
setup (hd0)
• kończymy pracę:
quit
GRUB powinien być zainstalowany, warto zwrócić uwagę, że jeśli
mamy dysk SATA to zamiast „hdx” będzie „sdx”