[ předchozí ] [ Souhrn ] [ Autorská práva ] [ Obsah ] [ další ]

Instalace systému Debian GNU/Linux 2.2 na architektuře Alpha
Kapitola 6 Zavedení instalačního systému


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.


6.1 Parametry při bootování

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.


6.2 Význam hlášení během zavádění systému

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).


6.3 Zavádění systému z pevného disku

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.


6.3.1 Instalace z linuxové oblasti

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.

  1. Obstarejte si následující soubory a umístěte je do nějakého adresáři na vaší oblasti s Linuxem:
  2. Následující odstavce předpokládají, že jste systém zavedli z disket, samozřejmě ale můžete použít libovolnou další metodu.
  3. Vytvořte Rescue Floppy podle návody v Zápis obrazů disků na diskety, Oddíl 5.6.4. Poznamenejme, že nepotřebujete Driver Floppies.
  4. Vložte Rescue Floppy do vaší mechaniky a rebootujte počítač.
  5. Přečtěte si Zavedení instalačního systému, Kapitola 6.


6.4 Instalace z CD-ROMu

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.


6.5 Bootování pomocí TFTP

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.


6.5.1 Nastavení BOOTP

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.


6.5.2 Nastaveni TFTP serveru

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.


6.5.3 Přesunutí TFTP obrazů na místo

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


6.5.4 Installing with TFTP and NFS Root

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?


6.6 Firmware Alpha konzoly

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.


6.7 Natažení ze SRM konzoly

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.


6.8 Natažení z ARC nebo AlphaBIOS konzoly

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.


6.9 Natažení se zavaděčem MILO

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ů.


6.10 Problémy při startu systému

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.


[ předchozí ] [ Souhrn ] [ Autorská práva ] [ Obsah ] [ další ]
Instalace systému Debian GNU/Linux 2.2 na architektuře Alpha
verze 2.2.20, 25 November, 2000
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo