Příprava souborů pro zavedení ze sítě pomocí TFTP Pokud je váš počítač připojen do lokální sítě, můžete jej zavést ze sítě pomocí TFTP. Jestliže chcete pomocí TFTP zavést instalační systém, musíte na vzdáleném počítači nakopírovat zaváděcí soubory do specifických adresářů a povolit zavádění vaší stanice. Musíte nastavit TFTP server a často i DHCP server nebo RARP nebo BOOTP server. Klientovi můžete sdělit jeho IP adresu protokolem RARP (Reverse Address Resolution Protocol) nebo BOOTP. BOOTP je IP protokol, který informuje počítač o jeho IP adrese a prozradí mu, odkud si má stáhnout zaváděcí obraz. DHCP (Dynamic Host Configuration Protocol) je flexibilnější, zpětně kompatibilní rozšíření protokolu BOOTP. Některé systémy mohou být nastaveny pouze pomocí DHCP. Pokud máte NewWorld Power Macintosh, je lepší použít místo BOOTP protokol DHCP, protože některé novější počítače se neumí protokolem BOOTP zavést. Některé starší stroje HPPA (tj. 715/75) používají místo BOOTP protokol RBOOTD. Pro tyto účely slouží v Debianu balík rbootd. Pro přenos zaváděcí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. Abyste mohli využít PXE (Pre-boot Execution Environment) metodu TFTP zavádění, musíte mít TFTP server s podporou tsize, například tftp-hpa nebo atftpd (doporučujeme první zmíněný). &tftp-rarp.xml; &tftp-bootp.xml; &tftp-dhcp.xml; Povolení TFTP serveru Aby vám TFTP server fungoval, měli byste nejprve zkontrolovat, zda je tftpd povolen. Toho obvykle docílíte následující řádkou v souboru /etc/inetd.conf: tftp dgram udp wait nobody /usr/sbin/tcpd in.tftpd /tftpboot Při instalaci z debianích balíků se o nic nemusíte starat, protože se tento řádek založí automaticky při instalaci balíku. TFTP servery historicky používaly pro uložení nabízených obrazů adresář /tftpboot. Aby byl &debian; v souladu se standardem FHS, mohou debianí balíky používat jiná umístění. Například tftpd-hpa implicitně používá adresář /var/lib/tftpboot. Je proto možné, že budete muset cesty uváděné v této kapitole upravit pro konkrétní situaci. Podívejte se do souboru /etc/inetd.conf a zapamatujte si název adresáře, jehož jméno je za in.tftpd; Všechny alternativní in.tftpd v Debianu by měly automaticky zaznamenávat všechny požadavky, které jim byly zaslány, do systémových logů. To se hodí zejména v situaci, kdy zavádění neprobíhá tak, jak má. Některé TFTP servery umí zvýšit svou upovídanost parametrem -v. budete jej dále potřebovat. Pokud musíte změnit obsah souboru /etc/inetd.conf, musíte také upozornit proces inetd, aby aktualizoval svá nastavení. Na počítači s Debianem stačí spustit /etc/init.d/inetd reload. Na jiných systémech musíte zjistit ID běžícího procesu inetd a spustit kill -HUP pid-inetd. Pokud je vaším TFTP serverem GNU/Linux s jádrem 2.4.X a instalujete na počítač SGI, musíte na něm následujícím příkazem vypnout Path MTU discovery: # echo 1 > /proc/sys/net/ipv4/ip_no_pmtu_disc Pokud tak neučiníte, PROM na SGI nebude moci stáhnout jádro. Dále zkontrolujte že TFTP pakety jsou posílány z portu menšího než 32767, protože jinak by se přenos zastavil po prvním paketu. Rozsah zdrojových portů, které má TFTP server používat se nastaví příkazem: # echo "2048 32767" > /proc/sys/net/ipv4/ip_local_port_range Přesun TFTP obrazů na místo Dále je potřeba umístit příslušný TFTP obraz (viz ) do adresáře, kde má tftpd uloženy obrazy. Bohužel TFTP klient očekává jméno souboru v určitém tvaru, pro který neexistují žádné závazné standardy. Proto ještě musíte na příslušný obraz vytvořit odkaz, který tftpd použije pro zavedení konkrétního klienta. Na strojích NewWorld Power Macintosh budete muset nastavit jako zaváděcí TFTP obraz zavaděč yaboot. Yaboot si pak sám přes TFTP stáhne obrazy jádra a RAMdisku. Z adresáře netboot/ musíte stáhnout následující soubory: vmlinux initrd.gz yaboot yaboot.conf boot.msg Pro PXE zavádění by mělo být vše potřebné v souboru netboot/netboot.tar.gz. Tento archiv stačí rozbalit do adresáře, kde tftpd uchovává zaváděcí obrazy. Ujistěte se, že je váš dhcp server nastaven tak, aby jako jméno souboru pro zavedení zasílal pxelinux.0. Pro PXE zavádění by mělo být vše potřebné v souboru netboot/netboot.tar.gz. Tento archiv stačí rozbalit do adresáře, kde tftpd uchovává zaváděcí obrazy. Ujistěte se, že je váš dhcp server nastaven tak, aby jako jméno souboru pro zavedení zasílal /debian-installer/ia64//elilo.efi. TFTP zavádění na počítačích SPARC Některé počítače SPARC přidávají k názvu souboru jména podarchitektur jako třeba SUN4M nebo SUN4C. Pokud třeba máte počítač s podarchitekturou SUN4C a IP adresa je 192.168.1.3, pak jméno souboru bude C0A80103.SUN4C. Převod IP adresy na hexadecimální čísla můžete provést jednoduše v shellu příkazem $ printf '%.2x%.2x%.2x%.2x\n' 10 0 0 4 kde čísla 10 0 0 4 představují IP adresu (v tomto případě 10.0.0.4). Výsledek ještě musíte převést na velká písmena a případně připojit název podarchitektury. Jestliže jste vše zadali správně, měl by příkaz boot net zadaný v OpenPROM nahrát obraz. Pokud obraz nebyl nalezen, zkontrolujte logy svého tftp serveru, abyste zjistili, o jaký obraz počítač požádal. Některé sparc systémy můžete donutit hledat konkrétní soubor přidáním jména souboru na konec OpenPROM příkazu boot (např. boot net muj-sparc.obraz). Soubor musí samozřejmě ležet v adresáři prohledávaném TFTP serverem. TFTP zavádění na SGI U počítačů SGI se můžete spolehnout na bootpd, že předá správné jméno TFTP souboru. Jméno se zadává v souboru /etc/bootptab jako parametr bf= nebo v souboru /etc/dhcpd.conf parametrem filename=.