Upozornění :
Tento dokument již neplatí a není udržován.
|
[ << ]
[ < ]
[ Domů ]
[ > ]
[ >> ]
10. Konfigurace bootloaderu
Obsah:
10.a. Vyberte si
Úvod
Po kompilaci jádra, instalaci nezbytných systémových nástrojů a další
konfiguraci nastal nyní čas nainstalovat program, který po startu systému jádro
načítá, tzv. bootloader (zavaděč).
Než jeden z těchto zavaděčů nainstalujete, ukážeme
si, jak nastavit tzv. framebuffer, díky kterému můžete spustit linuxovou
příkazovou řádku s (omezenými) grafickými prvky, jako je např. hezká
spouštěcí obrazovka, bootsplash. Tento krok je samozřejmě volitelný.
Volitelně: framebuffer
Pokud jste v jádře povolili podporu framebufferu nebo jste
použili výchozí konfiguraci skriptu genkernel, můžete framebuffer
aktivovat přidáním voleb vga nebo video do konfigurace zavaděče.
Na 64bitových systémech musíte použít ovladač vesafb, a proto je potřeba
použít volbu vga.
Parametr vga řídí rozlišení a barevnou hloubku obrazovky framebufferu pro
vesafb. Jak je popsáno v dokumentu
/usr/src/linux/Documentation/fb/vesafb.txt nainstalovaném spolu
se zdrojovými kódy jádra, musíte zadat číslo VESA módu odpovídající
požadovanému rozlišení a barevné hloubce.
Následující tabulka uvádí kombinace dostupných rozlišení a barevné hloubky spolu
s odpovídajícími hodnotami, které musíte zadat s údajem vga.
|
640x480 |
800x600 |
1024x768 |
1280x1024 |
| 256 |
0x301 |
0x303 |
0x305 |
0x307 |
| 32 tisíc |
0x310 |
0x313 |
0x316 |
0x319 |
| 64 tisíc |
0x311 |
0x314 |
0x317 |
0x31A |
| 16 milionů |
0x312 |
0x315 |
0x318 |
0x31B |
Volba video nastavuje parametry framebufferového displeje. Je třeba uvést
ovladač (pro jádra řady 2.6 vesafb, pro řadu 2.4 vesa)
následovaný řídícími údaji podle Vašeho uvážení. Všechny možné volby jsou
uvedeny v dokumentu
/usr/src/linux/Documentation/fb/vesafb.txt, zde ukážeme tři
nejužívanější možnosti:
| Parametr |
Popis |
| ywrap |
předpokládá, že grafická karta dokáže přetočit paměť (tj. pokračovat znovu
od začátku, když dosáhla konce)
|
| mtrr:n |
nastaví MTRR registry; n může být:
0 - zakázáno (disabled)
1 - uncachable
2 - write-back
3 - write-combining
4 - write-through
|
Tyto dva údaje by mohly vypadat přibližně jako vga=0x318
video=vesafb:mtrr:3,ywrap nebo
video=vesafb:mtrr:3,ywrap,1024x768-32@85. Zanedlouho budou potřeba, proto
si je poznamenejte.
Na AMD64 sice funguje i LILO, avšak podporované je pouze použití GRUBU.
Pokračujme tedy jeho instalací.
10.b. Výchozí: použití GRUBu
Orientace v terminologii GRUBu
Abychom porozuměli GRUBu, je velmi důležité pochopit způsob, jakým odkazuje na
pevné disky a diskové oddíly. Tak např. linuxový oddíl /dev/hda1
(IDE disky) nebo /dev/sda1 (SATA/SCSI) se v GRUBu bude velmi
pravděpodobně nazývat (hd0,0). Všimněte si kulatých závorek kolem
hd0,0, jsou bezpodmínečně nutné.
Pořadí pevných disků se počítá od nuly, ne od "a", označení diskových oddílů
začíná rovněž na nule, ne na jedničce. Dejte také pozor na to, že do "hd" se
započítávají pouze pevné disky, nikoliv ostatní zařízení ATAPI-IDE, jako jsou
CDROM mechaniky nebo vypalovačky. To samé platí pro SCSI zařízení. (Obvykle
obdrží vyšší čísla než IDE disky, kromě případu, kdy je BIOS konfigurován tak,
aby bootoval ze SCSI zařízení.) Nastavíte-li BIOS, aby bootoval
z jiného pevného disku (např. ze druhého zařízení na prvním kanálu -
primary slave), bude takový disk označen za hd0.
Dejme tomu, že máte první pevný disk na /dev/hda, CD-ROM mechaniku
na /dev/hdb, vypalovačku na /dev/hdc, druhý pevný disk
na /dev/hdd a v systému není žádný SCSI disk. V takovém
případě si GRUB přeloží /dev/hdd7 jako (hd1,6). Možná
to vypadá na první pohled zmateně, ale jak uvidíte, GRUB nabízí funkci
automatického doplňování pomocí klávesy TAB, která Vám pomůže, když by hrozilo,
že se v tomto číselném schématu ztratíte.
Jestli jste to už strávili, dejme se do instalace GRUBu.
Instalace GRUB
Jako první krok zadáme příkaz emerge:
Výpis kódu 2.1: Instalace GRUB |
# emerge grub
|
GRUB je nyní sice nainstalován, je však ještě potřeba pro něj napsat
konfigurační soubor a zapsat GRUB do MBR pevného disku, aby mohl automaticky
zavést nové jádro. Spusťte svůj oblíbený editor (pro potřeby tohoto návodu
používáme nano) a vytvořte v něm soubor
/boot/grub/grub.conf:
Výpis kódu 2.2: Vytvoření /boot/grub/grub.conf |
# nano -w /boot/grub/grub.conf
|
Nyní se chystáte vytvořit konfigurační soubor grub.conf. Níže
najdete příklady dvou možných podob grub.conf pro ukázkové
rozdělení disků použité jako příklad pro účely tohoto návodu. Podrobně
komentován je pouze první grub.conf. Ujistěte se, že zadáváte
název svého obrazu jádra, a pokud je třeba, i svého initrd obrazu.
-
první grub.conf je pro uživatele, jejichž jádro není sestavené
příkazem genkernel
-
druhý grub.conf pak pro ty, kdo pro sestavení svého jádra
použili genkernel
Poznámka:
Je-li Váš kořenový souborový systém typu JFS, musíte přidat "ro"
k řádce kernel, protože JFS potřebuje přehrát svůj
záznam dříve, než dovolí připojit disk v režimu pro čtení i zápis.
|
Výpis kódu 2.3: grub.conf pro ty, kdož nepoužili genkernel |
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoo Linux 2.6.17-r5
root (hd0,0)
kernel /boot/kernel-2.6.17-gentoo-r5 root=/dev/hda3
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
|
Výpis kódu 2.4: grub.conf pro uživatele genkernelu |
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoo Linux 2.6.17-r5
root (hd0,0)
kernel /boot/kernel-genkernel-amd64-2.6.17-gentoo-r5 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev
initrd /boot/initramfs-genkernel-amd64-2.6.17-gentoo-r5
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
|
Poznámka:
Údaj udev na konci řádky, která definuje umístění jádra, je nutný
k opravě chyby v některých verzích genkernelu v případě,
že používáte primárně udev, což je standardní nastavení.
|
Pokud jste zvolili jiné rozdělení oddílů nebo obrazy jádra, musíte údaje
náležitě upravit. Dbejte zejména na to, aby všechny odkazy za určením
zařízení podle GRUBu (jako např. (hd0,0)) byly uvedeny relativně
vzhledem k bodu připojení (mountpoint), nikoliv ke kořenovému adresáři
(root). Jinými slovy, (hd0,0)/grub/splash.xpm.gz je
ve skutečnosti /boot/grub/splash.xpm.gz, protože
(hd0,0) je /boot.
Navíc pokud jste se rozhodli pro jiné rozdělení oddílů a neumístili
/boot na zvláštní oddíl, je uvedení prefixu /boot
nutné. Jestliže jste se drželi našeho doporučení, vyžadován není, avšak
symbolický odkaz boot umožní, že rovněž funguje. Výše uvedené
příklady proto můžete použít, ať už máte /boot na zvláštním oddíle
či nikoli.
Chcete-li jádru předat nějaké dodatečné volby, jednoduše je zapište na konec
řádku příkazu kernel. Už jste zadali jeden parametr
(root=/dev/hda3, případně real_root=/dev/hda3), ale můžete
připsat i další, jako třeba video nebo vga pro
framebuffer, viz výše.
Používáte-li jádro ve verzi 2.6.7 nebo vyšší a nastavili jste svůj disk,
aby ohlašoval menší velikost, protože Váš BIOS neumí zacházet s velkými
disky, musíte přidat hdx=stroke.
Jestliže jste použili genkernel, měli byste vědět, že Vaše jádro
používá tytéž bootovací příkazy jako instalační CD, proto například máte-li SCSI
zařízení, měli byste přidat jako volbu jádra parametr doscsi.
Nyní uložte soubor grub.conf a ukončete editor. Stále je ještě
potřeba nainstalovat GRUB do MBR (Master Boot Record), aby byl GRUB automaticky
zaveden, když spustíte počítač.
Vývojáři GRUBu doporučují použít k instalaci nástroj grub-install.
Kdyby však z nějakého důvodu nepracoval správně, máte stále možnost
nainstalovat GRUB ručně.
Pokračujte buď částí výchozí: nastavení GRUBu
pomocí grub-install anebo sekcí alternativní: ruční nastavení GRUBu.
Výchozí: nastavení GRUBu pomocí grub-install
Instalaci GRUBu provedete příkazem grub-install, který
by však nyní ještě nefungoval, neboť jste stále v chrootovaném prostředí.
Nejprve tedy musíte vytvořit /etc/mtab, soubor s informacemi
o všech připojených souborových systémech. Naštěstí existuje jednoduchý způsob,
jak to provést - jednoduše zkopírujete /proc/mounts do
/etc/mtab vyjma řádky rootfs, pokud jste nevytvořili pro
bootovací oddíl zvláštní partition. Následující příklad bude fungovat
v obou případech:
Výpis kódu 2.5: Vytvoření /etc/mtab |
# grep -v rootfs /proc/mounts > /etc/mtab
|
Nyní už můžete nainstalovat GRUB pomocí grub-install:
Výpis kódu 2.6: Spuštění grub-install |
# grub-install /dev/hda
|
Máte-li další otázky týkající se GRUBu, konzultujte prosím GRUB FAQ nebo GRUB Manuál (obojí
anglicky).
Pokračujte rebootem systému.
Alternativní: ruční nastavení GRUBu
Konfiguraci GRUBu zahájíte příkazem grub. Objeví se příkazový řádek
GRUBu grub>. Nyní musíte zadat správné příkazy, abyste
nainstalovali bootovací záznam GRUBu na pevný disk.
Výpis kódu 2.7: Spuštění GRUB shellu |
# grub
|
Poznámka:
Nemá-li Váš systém disketovou jednotku, přidejte k výše uvedenému příkazu
volbu --no-floppy, abyste zabránili GRUBu testovat (neexistující)
disketové jednotky.
|
V tomto příkladu chceme nainstalovat GRUB tak, aby načítal informace
z bootovacího (zaváděcího) oddílu /dev/hda1 a
nainstaloval svůj bootovací záznam do MBR (Master Boot Record) pevného disku,
aby se po zapnutí počítače jako první objevila výzva GRUBu. Nezapomeňte upravit
zadávané příkazy podle své konfigurace, pokud jste se rozhodli pro jiné
rozdělení disků.
V příkazové řádce GRUBu můžete používat automatické doplňování pomocí
klávesy TAB. Např. když zadáte "root (" a stisknete
klávesu TAB, zobrazí se vám seznam dostupných zařízení (jako např.
hd0). Napíšete-li "root (hd0," a stisknete klávesu TAB,
zobrazí se seznam dostupných oddílů, ze kterých si můžete vybrat, jako
například hd0,0.
S pomocí tohoto automatického doplňování by neměla být instalace GRUBu tak
obtížná. Tak jdeme na to, ne? :-)
Výpis kódu 2.8: Instalace GRUBu do MBR |
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
|
Poznámka:
Chcete-li nainstalovat GRUB namísto do MBR na nějaký jiný oddíl, musíte změnit
příkaz setup tak, aby na příslušný oddíl odkazoval. Například pokud
chcete nainstalovat GRUB na /dev/hda3, bude mít příkaz podobu
setup (hd0,2). To se však týká jen mála uživatelů.
|
Máte-li další otázky týkající se GRUBu, konzultujte prosím GRUB FAQ nebo GRUB Manuál (obojí
anglicky).
Pokračujte restartem systému.
10.c. Restart systému
Opusťte chrootované prostředí a odpojte všechny připojené oddíly. Pak zadejte
onen magický příkaz, na který jste tolik čekali: reboot.
Výpis kódu 3.1: Odpojení všech oddílů a reboot |
# exit
cdimage ~# cd
cdimage ~# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo
cdimage ~# reboot
|
Nezapomeňte vyjmout bootovací CD, nebo vám místo vašeho nového systému Gentoo
naběhne znovu jen CD.
Až se nově nainstalovaný systém Gentoo spustí, pokračujte dokončením instalace.
[ << ]
[ < ]
[ Domů ]
[ > ]
[ >> ]
Obsah tohoto dokumentu je licencován pod licencí Creative Commons -
Attribution / Share Alike.
|