Tato kapitola nejprve začíná obecnými informacemi o nabootování debianu, dále pokračuje kapitolami týkajícími se konkrétních instalačních metod a na závěr zde naleznete několik rad pro odstraňování případných chyb.
Parametry při bootování jsou vlastně parametry pro jádro Linuxu, které se používají v případě, když chceme zajistit, aby jádro korektně pracovalo se zařízeními. Ve většině případů je jádro schopno detekovat všechna zařízení. Každopádně v některých speciálních případech musíme jádru trochu pomoci.
Metody, kterými lze předávat parametry jádru jsou bezprostředně závislé na
konzoli firmwaru, kterou budete používat při bootování. Jednotlivé metody pro
každou konzoli jsou popsány dále. Detailní informace o bootovacích parametrech
jsou k nalezení na Linux BootPrompt
HOWTO
; následující text obsahuje popis jen stěžejních parametrů.
Při prvním zavádění systému zkuste, zda-li systém detekuje všechna potřebná zařízení jen s implicitními parametry (tj. nenastavujte pro začátek žádné vlastní hodnoty). Pravděpodobně systém naběhne. V případě, že se tak nestane, můžete systém zavést později poté, co zjistíte jaké parametry je potřeba zadat, aby systém rozpoznal váš hardware.
Brzo po zavedení jádra se vám může objevit hlášení Memory: availk/totalk available. Hodnota total by měla ukazovat celkovou fyzickou paměť RAM (v kilobytech), která je systému dostupná. Pokud tato hodnota neodpovídá aktuálními stavu vaší paměti, potom byste měli použít bootovací parametr mem=ram, kde ram je vámi udaná velikost paměti (číslo zakončené znakem ,,k'' pro kilobyte nebo ,,m'' pro megabyte). Například, obě hodnoty mem=8192k a mem=8m znamenají 8MB RAM.
Pokud váš monitor umožňuje zobrazovat pouze černou a bílou barvu, zadejte argument mono. V opačném případě bude váš instalační proces používat barvy.
Jádro by mělo být schopeno rozpoznat, že zavádíte systém ze sériové konzoly. Pokud máte v bootovaném počítači rovněž grafickou kartu (framebuffer) a zapojenou klávesnici, měli byste při bootování zadat parametr console=device, kde device je vaše sériové zařízení, což je obvykle něco jako ,,ttyS0''.
Znovu připomeňme, že detailní popis bootovacích parametrů je k nalezení na
Linux
BootPrompt HOWTO
, tento seznam zahrnuje i tipy pro obskurní
hardware. Pokud máte s něčím problémy, přečtěte si navíc Problémy při startu
systému, Oddíl 6.10.
Během zavádění systému můžete vidět spoustu hlášení typu nemohu nalézt ..., není přítomen ..., nelze inicializovat ... nebo tento ovladač závisí na ..... Většina těchto hlašení je neškodná. Vy je vidíte proto, že jádro instalačního systémy je přeloženo tak, aby mohlo běžet na počítačích s odlišnými harwarovými konfiguracemi a mnoha různými periferními zařízeními. Samozřejmě že žádný počítač asi nebude mít všechna zařízení, tudíž systém nahlásí několik nenalezaných zařízení. Pokud se vám zdá doba, za kterou systém naběhne, příliš dlouhá, můžete si později vytvořit vlastní jádro (viz Kompilace nového jádra, Oddíl 8.4).
Ve speciálních případech si můžete přát nabootovat přímo z vašeho operačního systému. Je také možné, že instalační systém zavedete úplně jiným způsobem, ale základní systém budete instalovat z disku.
Systém Debian můžete nainstalovat ze stávající oblasti se souborovým systémem ext2fs nebo Minix. Tuto instalační metodu můžete například zvolit v případě, kdy chcete kompletně přeinstalovat váš dosavadní Linux systémem Debian.
Poznamenejme, že oblast, ze které instalujete, by v žádném případě
neměla být oblastí, do které chcete instalovat Debian (to se týká
např. oblastí pro adresáře /
, /usr
,
/lib
, atd.).
Pokud instalujete z existující Linuxové oblasti, řiďte se následujícími instrukcemi.
http://http.us.debian.org/debian/dists/potato/main/disks-alpha/current/base2_2.tgz
Pokud máte bootovací CD a váš systém podporuje bootování z CD, nepotřebujete při zavádění systému žádné diskety. Bootování z CD-ROM na architektuře Alpha je o něco složitější než na i386. Na druhou stranu to výrazně zmenšuje počet použitých disket, takže to stojí za zamyšlení. Přečtěte si Zavedení instalačního systému, Kapitola 6, kde naleznete informace o bootování Alpha systémů z CD-ROM a disketových mechanik.
I když není možné zavést systém z CD-ROM, můžete z CD-ROM instalovat základní systém. Jednoduše zaveďte systém pomocí jiného instalačního média, jako jsou diskety. Když dojde na instalaci základního systému a dalších balíků, pak zadejte, že budete instalovat z vaší CD-ROM mechaniky. Přečtěte si ``Instalovat základní systém'', Oddíl 7.14.
Musíte nastavit BOOTP server a TFTP server.
BOOTP je protokol, který informuje počítač jednak o jeho IP adrese, jednak o tom, odkud má získat tzv. boot image (obraz jádra vhodný pro zavedení systému). Na rozdíl od Open Firmware, který je stanicích Sparc a PowerPC, konzole SRM nemůže používat protokol RARP za účelem získání IP adresy. Proto musíte pro bootování alphy ze sítě použít protokol BOOTP. V SRM konzoli je také možné přímo nastavit konfiguraci síťových rozhraní. [3]
Pro přenos bootovacího obrazu ke klientovi se používá protokol TFTP (Trivial File Transfer Protocol). Teoreticky můžete použít server na libovolné platformě, která jej implementuje. Ukázky v této kapitole se vztahují k operačním systémům SunOS 4.x, SunOS 5.x (neboli Solaris) a GNU/Linux.
V GNU/Linuxu můžete použít v zásadě dva BOOTP servery, jednak CMU bootpd a ISC
dhcpd, které jsou v distribuci Debian GNU/Linux součástí balíků
bootp
, dhcp
.
Pokud chcete použít CMU bootpd, musíte nejprve odkomentovat (nebo přidat) jeden
důležitý řádek v souboru /etc/inetd.conf
. V systému Debian
GNU/Linux můžete spustit update-inetd --enable bootps, potom
restartujte inetd pomocí /etc/init.d/inetd reload. V jiných
systémech přídejte řádku, která může vypadat zhruba takto:
bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120
Nyní musíte vytvořit soubor /etc/bootptab. Jeho struktura je
velmi podobná té, co používají programy printcap(5)
,
termcap(5)
a disktab(5)
ze systému BSD. Pokud
porřebujete další informace, podívejte se na manuálovou stránku
bootptab(5)
. Pokud používáte CMU bootpd, musíte rovněž znát
hardwarovou (MAC) adresu klinta.
Na druhou stranu, nastaveni BOOTP pomocí ISC dhcpd je velmi jednoduché, protože dhcpd považuje BOOTP klienty za speciální případ DHCP klientů. Nepotřebujete znát hardwarovou adresu klienta, pokud nepotřebujete specifikovat některá nastavení pro každého klienta zvlášť (např. jména obrazů nebo kořenové NFS). Pokud chcete umožnit bootování, jednoduše v konfiguračním souboru vložte do bloku dané podsítě, ve které chcete umožnit bootování, direktivu allow bootp. Potom restartujte dhcpd server pomocí /etc/init.d/dhcpd restart.
Pokud chcete používat TFTP, měli byste nejprve zjistit, zda-li je aktivován
server tftpd
. Obvykle je tento server spouštěn pomocí superdémona
inetd
, takže v souboru /etc/inetd.conf
byste měli mít
řádek.
tftp dgram udp wait root /usr/etc/in.tftpd in.tftpd -l /boot
Podívejte se do souboru /etc/inetd.conf
a zapamatujte si název
adresáře a obrazy, jehož jméno je za in.tftpd
; budeme jej dále
potřebovat. Přepínač -l umožňuje některým verzím
in.tftpd
zaznamenávat (logovat) všechny požadavky, které mu byly
zaslány, do systémových logů; to je vhodné zejména v situaci, kdy bootování
neprobíhá tak, jak má. Pokud musíte změnit obsah souboru
/etc/inetd.conf
, musíte rovněž běžícímu procesu inetd
sdělit, aby obnovil svá nastavení. Na stroji z Debianem stačí spustit
/etc/init.d/netbase reload; na jiných systémech musíte zjistit ID
běžícího procesu inetd
a spustit kill -1
inetd-pid.
Dále je potřeba přemístit TFTP zaváděcí obraz, který potřebujete (viz Popis souborů instalačního
systému, Oddíl 5.4) do adresáře, ve kterém má tftpd
uloženy
obrazy. V Debianu to bude obvykle adresář /boot
, v ostatních
systémech /tftpboot
. Dále musíte z toho souboru udělat odkaz na
soubor, který použije tftpd
pro nabootování konkrétního klienta.
Bohužel je jméno souboru určeno TFTP klientem a neexistují žádné závazné
standardy.
TFTP klient bude hledat soubor hex-ip-adresa-klienta-architektura.
hex-ip-adresa-klienta se spočítá následovně: Každý bajt IP adresy
klienta vyjádřete z šestnáctkové soustavě. Pokud máte po ruce program
bc
klidně jej použijte. Příkazem obase=16 nastavíte
výstup na hexadecimální a potom už jen zadáte jednotlivé části IP adresy. Pro
proměnnou architektura vyzkoušejte různé hodnoty.
Na systémech Alpha musíte zadat jméno (jako relativní cestu k adresáři se
zaváděcími obrazy) na SRM konzoli jako parametr argumentu -file
příkazu boot, Stejného výsledku dosáhnete nastavením proměnné
BOOT_FILE. Eventuálně můžete jméno specifikovat rovněž pomocí
BOOTP (při konfiguraci ISC dhcpd
použijte direktivu
filename). Na rozdíl od Open Firmwaru na SRM konzoli
neexistuje standardní jméno souboru, takže musíte
specifikovat jméno souboru jednou z popsaných metod.
Poté co určíte jméno souboru, příkazem ln /boot/tftpboot.img /boot/file-name vyrobíte požadovaný odkaz.
Nyní byste měli být připraveni k natažení systému. V SRM konzoli jsou názvy Ethernet rozhraní pojmenovány s předponou ewa a budou vypsány ve výstupu příkazu show dev (mírně modifikováno):
>>> show dev ewa0.0.0.9.0 EWA0 08-00-2B-86-98-65 ewb0.0.0.11.0 EWB0 08-00-2B-86-98-54 ewc0.0.0.2002.0 EWC0 00-06-2B-01-32-B0
Pro natažení z prvního Ethernet rozhraní byste napsali:
>>> boot ewa0
Při použití sériové konzoly musíte jádru předat parametr console=, což můžete udělat ze SRM konzoly přes argument -flags příkazu boot. Sériové porty mají stejná jména, jako jejich odpovídající soubory v adresáři /dev. Například pro natažení z ewa0 a použití konzoly na prvním sériovém portu byste napsali:
>>> boot ewa0 -flags console=ttyS0
NOT YET WRITTEN
It is closer to "tftp install for lowmem..." because you don't want to load the ramdisk anymore but boot from the newly created nfs-root fs. You then need to replace the symlink to the tftpboot image by a symlink to the kernel image (eg. linux-a.out). My experience on booting over the network was based exclusively on RARP/TFTP which requires all daemons running on the same server (the sparc workstation is sending a tftp request back to the server that replied to its previous rarp request). However linux is supporting BOOTP protocol too but I don't know how to set it up :-(( Do it have to be documented as well in this manual?
Firmware konzoly je uložen ve flash ROM a je spuštěn vždy při zapnutí Alpha systému nebo při resetu. Na Alpha systémech se používají dvě odlišné specifikace konzolí a tudíž se používají i dva typy firmwaru:
Z uživatelského hlediska je mezi SRM a ARC konzolami největší rozdíl v tom, že volbou konzole se odsuzujete k použití určitého typu rozdělení toho disku, ze kterého budete natahovat systém.
ARC požaduje pro zaváděcí disk použití DOSové tabulky oblastí (jak ji vytvoří
cfdisk
). Proto jsou také při startu z ARC konzoly DOSové tabulky
oblastí ,,nativním'' formátem oblastí. Od té doby co AlphaBIOS obsahuje
utilitu na dělení disků, je lepší rozdělit disky z firmwaru ještě před
instalací Linuxu.
Obdobně je SRM nekompatibilní s DOSovou tabulkou oblastí. [4] Jelikož Tru64 Unix používá formát BSD disklabel, je to pro SRM instalace ,,nativní'' formát oblastí.
Protože GNU/Linux je na Alpha stanicích jediný operační systém zaveditelný z obou typů konzol, bude váš výběr také záviset na ostatních operačních systémech, které chcete mít na daném stroji. Všechny ostatní Unix-like operační systémy (Tru64 Unix, FreeBSD, OpenBSD a NetBSD) a OpenVMS mohou startovat pouze ze SRM, zatímco Windows NT mohou být nataženy jenom z ARC.
Následující tabulka shrnuje dostupné a podporované kombinace systémů a konzol (jména systémů najdete v CPU, Mainboards, and Video Support, Oddíl 2.1.2). Slovo ,,ARC'' v příkladu označuje jakoukoliv ARC-kompatibilní konzoli.
Typ systému Podporovaný typ konzoly =========== ======================= alcor ARC nebo SRM avanti ARC nebo SRM book1 SRM cabriolet ARC nebo SRM dp264 SRM eb164 ARC nebo SRM eb64p ARC nebo SRM eb66 ARC nebo SRM eb66p ARC nebo SRM jensen SRM lx164 ARC nebo SRM miata ARC nebo SRM mikasa ARC nebo SRM mikasa-p SRM nautilus ARC (viz manuál k základní desce) noname ARC nebo SRM noritake SRM noritake-p SRM pc164 ARC nebo SRM rawhide SRM ruffian ARC sable SRM sable-g SRM sx164 ARC nebo SRM takara ARC nebo SRM xl ARC xlt ARC nebo SRM
Obvykle neumí žádná z těchto konzolí natáhnout Linux přímo, takže je potřeba
zavaděče, který funguje jako prostředník. Existují dva hlavní linuxové
zavaděče: MILO
a aboot
.
MILO
je sám konzolí, která v paměti nahrazuje ARC či SRM.
MILO
může být zaveden jak z ARC, tak ze SRM konzoly, přičemž při
natažení z ARC konzoly to je jediná cesta, jak z ní zavést Linux.
MILO
je platformově závislé (pro každý typ systému je potřeba jiný
MILO
) a existuje pouze pro ty systémy, které podle předchozí
tabulky podporují ARC. Podívejte se také do (bohužel staršího) MILO HOWTO
.
aboot
je malý, platformově nezávislý zavaděč, který běží pouze z
konzoly SRM. Více informací o tomto programu je v (také starším) SRM HOWTO
.
V závislosti na firmwaru konzoly a na (ne)přítomnosti programu
MILO
jsou možné tři scénáře:
SRM -> aboot SRM -> MILO ARC -> MILO
Základní deska UP1000 (jméno subarchitektury ,,nautilus'') od Alpha Processor, Inc. je odlišná od všech ostatních tím, že používá API-specifický zavaděč, který běží pod AlphaBIOS firmwarem. Pro UP1000 (zatím) neexistují instalační diskety, ale neměl by být problém instalovat z normálních instalačních disket podle manuálu a použít jádro ,,generic'' nebo ,,nautilus''.
Protože program MILO
není dostupný pro žádné právě vyráběné Alpha
systémy (únor 2000) a protože již není nutné si pro získání SRM firmwaru na
starší Alfu kupovat licenci OpenVMS nebo Tru64 Unix, je doporučeno na nové
instalace GNU/Linuxu použít SRM a program aboot
, pokud ovšem
nechcete mít dvojí zavádění s Windows NT, nebo pokud máte disky rozdělené
oblastmi kompatibilními s DOSem.
Většina AlphaServerů a všechny současné servery a pracovní stanice obsahují ve firmwaru jak SRM, tak i AlphaBIOS. Pro ,,half-flash'' stroje, jako třeba nejrůznější evaluation základní desky, je možné přepálením firmwaru přepnout z jedné verze na druhou. Po instalaci SRM je možné z diskety spouštět ARC/AlphaBIOS (příkazem ,,arc'').
Stejně jako na jiných architekturách byste měli před instalací Debianu
instalovat nejnovější dostupný firmware [5]. Firmware pro Alpha systémy můžete získat z Alpha Firmware
Updates
.
V SRM promptu (>>>
), zadejte následující příkaz:
>>> boot dva0 -flags 0
kde dva0
nahradíte jménem příslušného zařízení. dva0
je obvykle disketová mechanika. Pro seznam zařízení (třeba když chcete
startovat z CD) napište:
>>> show dev
Všimněte si, že pokud natahujete systém přes přes MILO, argument
-flags
je ignorován, takže stačí napsat boot dva0
.
Jestliže vše pracuje dobře, uvidíte natažení linuxového jádra.
Pokud chcete při natahování přes aboot
specifikovat parametry
jádra, použijte následující příkaz:
>>> boot dva0 -file linux.gz -flags "root=/dev/fd0 load_ramdisk=1 arguments"
(vše napsáno na jednom řádku). Pokud je to nutné, nahraďte jméno aktuálního
zaváděcího SRM zařízení pro dva0
za jméno linuxového zaváděcího
zařízení pro fd0
a místo arguments
zadejte další
parametry jádra.
Jestliže chcete zadat parametry jádra při natažení přes MILO
,
budete muset v jisté fázi přerušit zavádění... Podrobný návod je v Natažení se zavaděčem MILO,
Oddíl 6.9.
V menu ,,OS Selection'' nastavte jako zavaděč linload.exe
a cestu
k operačnímu systému (,,OS Path'') na milo
. Natáhněte systém nově
vytvořenou položkou.
K natažení instalačního programu zadejte v MILO promptu následující příkaz:
MILO> boot fd0:linux.gz root=/dev/fd0 load_ramdisk=1
Pokud nenatahujete instalační systém z diskety, nahraďte v předchozím příkladu
fd0
za příslušné zařízení (v linuxové notaci). Příkaz
help
vám poskytne stručný popis MILO příkazů.
Pokud se jádro zasekne během natahování, nerozezná připojená zařízení, nebo disky nejsou korektně rozpoznány, v prvé řadě zkontrolujte parametry jádra, kterými se zabývá Parametry při bootování, Oddíl 6.1.
Často pomůže, pokud z počítače vyjmete přídavná zařízení a vyzkoušíte znovu nastartovat.
Pokud problém přetrvává, prosíme vás o zaslání popisu chyby na adresu submit@bugs.debian.org
. Na
začátku zprávy musíte uvést následující údaje:
Package: boot-floppies Version: version
Ujistěte se, že version odpovídá verzi sady disket, které jste zkoušeli. Neznáte-li verzi, uveďte alespoň datum, kdy jste si diskety nahráli a z jaké distribuce pocházejí (tzn. ,,stable'', ,,frozen'').
Ve vaší zprávě by se měly objevit i následující informace:
architecture: alpha model: výrobce a typ počítače memory: velikost paměti RAM scsi: typ řadiče SCSI cd-rom: typ CD-ROM a způsob jejího připojení (ATAPI) network card: typ síťové karty pcmcia: údaje o zařízeních PCMCIA
V závislosti na povaze chyby by mohlo být užitečné uvést, zda instalujete na disk IDE nebo SCSI, další informace jako zvuková karta, kapacita disku a typ grafické karty.
V samotné zprávě podrobně popište problém, včetně posledních viditelných hlášeních jádra v okamžiku zaseknutí počítače. Také nezapomeňte popsat kroky, kterými jste se do problémové části dostali.