GRUB (Česky)
Contents
Úvod
Varování: Příští generace GRand Unified Bootloader (GRUB2) je stále pod vývojem a proto platí všechny obvyklé body. GRUB2 může zavařit váš počítač, zapálit váš dům nebo sníst vaši kočku. Byli jste varováni! Pro většinu lidí kromě těch s exotičtějšími konfiguracemi by GRUB2 měl prostě fungovat.
Mezi GRUBem a GRUB2 proběhly změny v příkazech. Než budete pokračovat, můžete se s nimi chtít seznámit. Např.: "find" bylo změněno na "search".
http://grub.enbug.org/CommandList
Instalace balíčku grub2
Nejdříve nainstalujte grub2 pomocí pacmana:
# pacman -S grub2
Upravte konfigurační soubor grub2 podle svého nastavení. "Starý" soubor menu.lst je nahrazen novým souborem pod názvem grub.cfg.
# nano /boot/grub/grub.cfg
Poznámka: Používejte hd[a-z] pro ide a sd[a-z] pro scsi a sata
Zde je příklad jednoduchého konfiguračního souboru:
# Config file for GRUB2 - The GNU GRand Unified Bootloader # /boot/grub/grub.cfg # DEVICE NAME CONVERSIONS # # Linux Grub # ------------------------- # /dev/fd0 (fd0) # /dev/sda (hd0) # /dev/sdb2 (hd1,2) # /dev/sda3 (hd0,3) # # Timeout for menu set timeout=5 # Set default boot entry as Entry 0 set default=0 # (0) Arch Linux menuentry "Arch Linux" { set root=(hd0,1) linux /vmlinuz26 root=/dev/sda1 ro initrd /kernel26.img } ## (1) Windows #menuentry "Windows" { #set root=(hd0,3) #chainloader +1 #}
Pokud nemáte zvlášť oddělený bootovací oddíl, musí být do grub.cfg přidáno '/boot
'. Příklad:
# (0) Arch Linux menuentry "Arch Linux" { set root=(hd0,1) linux /boot/vmlinuz26 root=/dev/sda1 ro initrd /boot/kernel26.img }
Instalace nebo obnova GRUBu do hlavního spouštěcího záznamu (MBR)
GRUB může být nainstalován buď z live prostředí nebo přímo z běžící instalace Arch Linuxu.
Ve většině případů je instalace grub2 tak jednoduchá jako spuštění příkazu grub-install pod rootem:
# grub-install /dev/sda
kde /dev/sda je cíl instalace (v tomto případě MBR prvního SATA disku).
Pokud toto selže s chybou:
grub-probe: error: Cannot get the real path of `/dev/fd0' Auto-detection of a filesystem module failed. Please specify the module with the option `--modules' explicitly.
Zkuste do parametrů přidat --recheck
takto:
# grub-install --recheck /dev/sda
Případně byste měli být schopni nainstalovat grub2 nabootováním do systému a spuštěním příkazu grub pod rootem:
# grub {tato sekce je stále nedokončená, měly by být přidány další kroky!!!}
(grub2 nemá interaktivní prompt)
Konfigurace zavaděče
Konfigurace grubu se provádí v tomto souboru:
/boot/grub/grub.cfg
Tato část zatím není kompletní, můžete sem přidat všechny chybějící konfigurační volby!
- (hdn,m) – je oddíl m na disku n, čísla oddílů začínají od 1, čísla disků začínají od 0
- set default=n –je výchozí položka pro zavedení, jenž je automaticky zvolena po časovém limitu pro akce od uživatele
- set timeout=m –čas m v sekundách, po který se má čekat na výběr uživatele, než je zavedena výchozí položka
- menuentry "str"{volby položky} – titulek str pro položku a základní rozvržení
- set root=(hdn,m) –základní diskový oddíl, kde je uloženo jádro
- linux /path ro root=/dev/device initrd /initrd.img – volbu root použijte, pokud kernel není umístěn v /
- chainloader +1 – nastaví root jako aktivní a předá řízení jeho zavaděči (pro Windows, např.)
Pro UUID záznamy:
bash-3.2# blkid
Dual booting
Toto jsou dvě nejčastější cesty konfigurace souboru grub.cfg. Pro složitější účely sem klidně můžete přidat vysvětlení.
Dual booting s Windows
Přidejte toto na konec /boot/grub/grub.cfg. Předpokládá se zde, že váš oddíl s Windows je [s/h]da3.
# (2) Windows XP menuentry "Windows XP" { set root=(hd0,3) chainloader +1 }
Poznámka: Přestože se v to obecně věří, Windows 2000 a pozdější nemusí být na prvním oddílu, aby se spustily. Pokud oddíl s Windows změní číslo (např. když přidáte nový oddíl před oddíl s Windows), musíte upravit soubor boot.ini, abyste odrazili tuto změnu (viz tento článek pro detaily o tom, jak to udělat).
Dual booting s jinými distribucemi Linuxu
Toto se provede přesně tím samým způsobem, jak je zaveden Arch Linux. Zde předpokládáme, že další distribuce je na oddílu [s/h]da2.
menuentry "Other Linux" { set root=(hd0,2) linux /boot/vmlinuz (add other options here as required) initrd /boot/initrd.img (if the other kernel uses/needs one) }
Tipy a triky
Pro změnu barev v GRUB2 uveďte v /boot/grub/grub.cfg tyto dvě volby:
set menu_color_normal=light-blue/black set menu_color_highlight=light-cyan/blue
Toto jsou výchozí barvy pro verzi GRUB-legacy v Arch Linuxu. Dostupné barvy jsou zatím nezdokumentované, ale pravděpodobně se shodují s barvami GRUB-legacy.
Řešení problémů
Sem by měla být přidána všechna řešení problémů.