Mini Howto dla bezdyskowych stacji Robert Nemkin, buci@math.klte.hu v0.0.3, 12 Września 1996. Wersja polska: Bartosz Maruszewski B.Maruszewski@zsmeie.torun.pl v1.12, 26 Lipca 1997 Dokument ten opisuje jak zainstalować bezdyskową stacje roboczą Linux- a. Prawa autorskie należą do Roberta Nemkina. Polisa praw autorskich to GPL. Chciałbym podziękować Bela Kis bkis@cartan.math.klte.hu za przetłumaczenie tego dokumentu na język angielski. Dokument ten został napisany w standardzie ISO-8859-2. Wersja oryginalna znajduje się pod adresem ftp.icm.edu.pl <ftp://ftp.icm.edu.pl:/pub/Linux/sun site/docs/HOWTO/mini/>. ______________________________________________________________________ Spis treści 1. Zmiany. 2. Jak zainstalować bezdyskową stację roboczą Linux-a ? 3. Dokumenty związane z tym. 4. Sprzęt. 5. Podstawowe idee. 5.1 Ustawianie PC-ta. 5.2 Ustawianie bootpd na serwerze. 5.3 Konfiguracja bottpd na serwerze. 5.4 Rozumienie tftp. 5.5 Ustawianie minimalnej konfiguracji Linux-a na odległym serwerze. 5.6 Konfiguracja serwera tftp. 5.7 Praca końcowa. 6. Wymagania pamięciowe i dyskowe; prędkość. 7. Możliwe błędy. 8. Błędy i możliwy dalszy rozwój tego dokumentu. 8.1 Od autora. 8.2 Od tłumacza. ______________________________________________________________________ 1. Zmiany. ˇ v0.0.3 12 Września 1996: Małe poprawki błędów. 2. Jak zainstalować bezdyskową stację roboczą Linux-a ? Dokument ten traktuje o instalacji bezdyskowej stacji roboczej na Linux-ie. Czasami jest konieczna instalacja Linux-a na PC-tach, które nie mają ani dysku twardego ani stacji dyskietek. Jeśli dostępna jest sieć, inny komputer z Unix-em z bootp, tftp, serwer NFS, i eprom burner FIXME wtedy możliwe jest zainstalowanie Linux-a bez twardego dysku czy dyskietek. 3. Dokumenty związane z tym. ˇ NFS-root Mini Howto ˇ Linux NET-2/3-HOWTO napisane przez Terry Dawsona, 94004531@postoffice.csu.edu.au ˇ /usr/src/linux/README na temat konfiguracji i kompilacji nowego jądra. 4. Sprzęt. Cokolwiek tu było opisane, sprawdzone zostało na następującej konfiguracji: ˇ Sun-OS 4.1.3 jako serwer startowy ˇ Slackware 2.3 + Linux 1.2.8 + wd 8013 ethercard ˇ Działająca sieć lokalna oparta na Ethernecie. 5. Podstawowe idee. Podstawową ideą tego jest: PC-et otrzyma swój adres IP z serwera startowego poprzez protokół bootp, używając 0.0.0.0 jako inicjacyjnego adresu IP oraz jądro poprzez protokół tftp. (-- Startowanie poprzez różne segmenty (poprzez ruter) nie jest takim prostym pytaniem, więc albo umieść oba - serwer startowy i stację bezdyskową - w jednym segmencie albo skonfiguruj pomocniczy adres UDP w swoim ruterze dla adresu serwera. Dalszych informacji szukaj w podręczniku dostarczonym razem z twoim ruterem.--) Aby to zrobić postepuj zgodnie z poniższymi krokami. 5.1. Ustawianie PC-ta. Zdobądź pakiet nfsboot. (Dostępny jest np. z ftp.icm.edu.pl) Zawiera on obraz BIOS-u dla karty wd8013, który może być bezpośrednio zapisany. Są jeszcze inne alternatywne sposoby na przygotowanie PC-ta: ˇ jeśli twój komputer nie jest całkowicie bezdyskowy, wtedy możesz użyć małego DOS-owego programu albo ˇ obrazu dyskietki binarnej z tego samego pakietu. Jeśli wybierzesz tę druga opcję musisz zapisać obraz na dyskietke poleceniem dd. Obrazy te zawierają klienta bootp oraz tftp. Musisz także przygotować jądro, które będzie zawierało opcję nfs-root. ˇ Jeśli używasz najnowszej stabilnej wersji jądra, linux-1.2.13, to musisz załatać jądro łatą zawartą w pakiecie nfsboot. (-- Zobacz patch(1)--) ˇ Jeśli próbujesz użyć najnowszej wersji jądra z serii 1.3.x, to musisz skonfigurować opcję nfs-root. Możesz skonfigurować obsługę urządzenia blokowego (dyskietki albo dysku twardego), ale musisz skonfigurować obsługę tcp/ip, karty wd ethernet, głównego sytemu plików przez nfs. Potem skompiluj jądro jak zwykle. 5.2. Ustawianie bootpd na serwerze. Można go znleźć w pakiecie >bootpd-2.4.tar.gz na serwerze ftp.icm.edu.pl. Zdobądź pakiet, skompiluj go i zainstaluj. Jeśli twój drugi komputer to przypadkiem Linux Slackware, to możesz przeskoczyć ten krok ponieważ standardowa dystrybucja zawiera bootpd. Demona można uruchomić albo bezpośrednio poleceniem: bootpd -s albo używając inetd. W tym wypadku musisz: ˇ zmienić plik /etc/inetd.conf przez usunięcie znaku # z początku tych linii: ___________________________________________________________________ # tftp dgram udp wait root /usr/sbin/in.tftpd tftpd /export # bootps dgram udp wait root /usr/sbin/in.bootpd bootpd ___________________________________________________________________ ˇ dołożyć lub także odkomentować następujące linie w pliku /etc/services ___________________________________________________________________ bootps 67/tcp # serwer BOOTP tftp 69/udp # serwer TFTP ___________________________________________________________________ ˇ ponownie zainicjować inetd przez kill -HUP <PID inetd> 5.3. Konfiguracja bottpd na serwerze. Po pierwsze bootpd ma plik konfiguracyjny o nazwie bootptab, który z reguły znajduje się w katalogu /etc. Musisz go zmodyfikować przez wpisanie adresu IP twoich gateway-ów, serwerów dns i adres-u/ów ethernet twojej stacji bezdyskowej. Oto przykładowy plik konfiguracyjny /etc/bootptab: ______________________________________________________________________ global.prof:\ :sm=255.255.255.0:\ :ds=192.168.1.5:\ :gw=192.168.1.19:\ :ht=ethernet:\ :bf=linux: machine1:hd=/export/root/machine1:tc=global.prof:ha=0000c0863d7a:ip=192.168.1.1 machine2:hd=/export/root/machine2:tc=global.prof:ha=0800110244e1:ip=192.168.1.1 machine3:hd=/export/root/machine3:tc=global.prof:ha=0800110244de:ip=192.168.1.1 ______________________________________________________________________ global.prof jest ogólnym szablonem dla pól host-a, gdzie ˇ sm jest maską podsieci ˇ ds jest adresem serwera DNS ˇ gw jest adresem gatway-a ˇ ht jest typem sprzętu LAN ˇ bf jest nazwą pliku startowego Potem każdy komputer musi mieć swoją linię: ˇ pierwsze pole jest nazwą host-a ˇ pole hd jest katalogiem, w którym znajduje się plik startowy ˇ ogólny szablon może być zawarty przez pole tc ˇ pole ha jest adresem sprzętowym karty ethernet ˇ pole ip jest adresem przypisanym do danego host-a 5.4. Rozumienie tftp. TFTP (Trivial File TRansfel Protocol) jest protokołem transferu plików, takim jak ftp, z tym, że o wiele prostszym do zapisania go w EPROM-ach. TFTP może zostac użyty na dwa sposoby: ˇ proste tftp: oznacza, że klient ma dostęp do całego twojego systemu plików. Jest to prostsze rozwiązanie, ale jest ono wielką dziurą w bezpieczeństwie systemu (każdy może pobrać twój plik z hasłami poprzez tftp). ˇ bezpieczne tftp: serwer tftp używa funkcji systemowej chroot(2), aby zmienić swój katalog główny. Wszystko poza nowym katalogiem głównym będzie całkiem niedostępne. Z powodu chroot dir staje się nowym katalogiem głównym; pole hd musi odzwierciedlać nową sytuację. Na przykład: podczas używania niezabezpieczonego tftp, pole hd zawiera pełną ścieżkę do katalogu startowego: /export/root/machine1. Podczas używania bezpiecznego tftp z katalogiem /expoprt jako katalog główny, wtedy /export staje się / a pole hd musi zawierać /root/machine1. Prawie każda implementacja Unix-a zawiera serwer tftp, przypuszczalnie nie musisz instalować własnego. 5.5. serwerze. Ustawianie minimalnej konfiguracji Linux-a na odległym Może to zawierać pakiety a, ap, n oraz x z dystrybucji Slackware. Jeśli zainstalujesz więcej - nie ma sprawy; ale wymienione pakiety wystarczą, żeby zrobić bezdyskowy Xterminal. Do instalacji potrzebujesz działającego już Linux-a. Znajdź trochę miejsca na dysku na odległym komputerze i wyeksportuj je jako do zapisu-i-odczytu. Zamontuj ten wyeksportowany katalog gdzieś (np. /mnt) w systemie plików Linux-a. Zacznij ustawianie Linux-a i zmień opcję root w setup- ie z / na /mnt. Potem zainstaluj powyższe pakiety jak zwykle. Jeśli chcesz mieć nie więcej niż jedną stację bezdyskową Linux-ową, to nie potrzeba żadnych zmian. Jednak z drugiej strony, jeśli planujesz używać więcej niż jednej bezdyskowej stacji Linux-owej wtedy powyższe ustawienia nie będą działać ponieważ niektóry pliki i katalogi muszą być prywatne dla danej maszyny. Problem ten można obejść przez przeniesienie katalogu /usr (nie zaweira on żadnych prywatnych danych) i stworzyć osobne podkatalogi dla każdej bezdyskowej stacji. Na przykład, jeśli /export/linux/machine1 zostałby zamontowany na /mnt wtedy struktura katalogów po inicjacyjny ustawieniu wyglądałaby tak: ______________________________________________________________________ /export/linux/machine1/bin /export/linux/machine1/sbin /export/linux/machine1/lib /export/linux/machine1/etc /export/linux/machine1/var /export/linux/machine1/usr ______________________________________________________________________ Po zmianach wyglądałaby tak: ______________________________________________________________________ /export/linux/machine1/bin /export/linux/machine1/sbin /export/linux/machine1/lib /export/linux/machine1/etc /export/linux/machine1/var /export/linux/usr _________________________________...
Porozmawiajmy.TV