  Stacja robocza z gwnym systemem plikw z sieci.
  Autor: Ofer Maor, ofer@hadar.co.il
  v3, 5 Grudnia 1996
  WWeerrssjjaa ppoollsskkaa:: BBaarrttoosszz MMaarruusszzeewwsskkii
  BB..MMaarruusszzeewwsskkii@@zzssmmeeiiee..ttoorruunn..ppll
  v1.02, 26 Lipca 1997


  Celem tego dokumentu jest wyjanienie jak stworzy gwne katalogi na ser-
  werze, ktry obsuguje klientw z montowanym gwnym systemem plikw.
  Najnowsz wersj oryginau moesz znale pod adresem www.hadar.co.il
  <http://www.hadar.co.il/ofer/nfs-root-client/>.  Dokument ten zosta
  napisany w standardzie ISO-8859-2.  Odnonie nowszych wersji tumaczenia
  zobacz sekcj ``Od tumacza''.
  ______________________________________________________________________

  Spis treci


  1. Prawa autorskie.

     1.1 Podzikowania.

  2. Przedmowa.

     2.1 Przegld oglny.

  3. Tworzenie gwnego katalogu klienta.

     3.1 Tworzenie drzewa katalogw.
     3.2 Tworzenie minimalnego systemu plikw potrzebnego do startu.
        3.2.1 Tworzenie katalogu dev.
        3.2.2 Kopiowanie potrzebnych binariw.
        3.2.3 Katalog var.
        3.2.4 Reszta katalogw.
     3.3 Tworzenie katalogu etc oraz konfiguracja klienta.
        3.3.1 Tworzenie katalogu dla wszystkich klientw.
        3.3.2 Tworzenie katalogu etc dla klienta.
     3.4 Startowanie.

  4. Tworzenie wikszej iloci klientw.

     4.1 Od tumacza.


  ______________________________________________________________________

  11..  PPrraawwaa aauuttoorrsskkiiee..


  Prawa autorskie nale do Ofera Maora <ofer@hadar.co.il>.

  O ile nie stwierdza si inaczej, dokumenty HOWTO s chronione prawami
  autorskimi ich autorw. Mog one by rozprowadzane w caoci lub w czci, w
  jakiejkolwiek postaci fizycznej czy elektronicznej tak dugo, dopki
  znajduje si w nich ta wzmianka.  Dystrybucja komercyjna jest
  dozwolona, a nawet zachca si do niej; chocia autor chciaby by
  poinformowany o takowej.

  Wszelkie tumaczenia, prace pochodne, prace zebrane zawierajce
  dokumenty HOWTO musz zawiera t notatk o prawach autorskich.  Oznacza
  to, e nie moesz stworzy pracy pochodzcej z HOWTO i naoy na jej
  dystrybucj dodatkowych ogranicze. Wyjtki od tej zasady mog by
  uczynione pod pewnymi warunkami; skontaktuj si z koordynatorem
  programu Linux HOWTO pod niej podanym adresem.

  Krtko mwic, chcemy promowa szerzenie tych dokumentw przez wszelkie
  dostpne kanay. Chcielibymy take utrzyma prawa autorskie naoone na te
  dokumenty, i by powiadomieni o planach dotyczcych redystrybucji HOWTO.

  Jeli masz jakie pytania, skontaktuj si z Oferem Maorem pod adresem
  <_o_f_e_r_@_h_a_d_a_r_._c_o_._i_l> - autorem tego dokumentu, albo Gregiem Hankinsem -
  koordynatorem projektu Linux HOWTO pod adresem
  <_g_r_e_g_h_@_s_u_n_s_i_t_e_._u_n_c_._e_d_u>.

  Jeli masz co do dodania, skontaktuj si prosz z autorem (Ofer Maor
  <ofer@hadar.co.il>). Szczeglnie mile widziane s informacje o
  pojawieniu si nowszych narzdzi.


  11..11..  PPooddzziikkoowwaanniiaa..


  Chciabym wyrazi podzikowania autorowi NFS-Root Howto, Andreasowi
  Kostyrce (htmlurl url="mailto:andreas@medman.ag.or.at"
  name="andreas@medman.ag.or.at"). Jego dokument pomg mi w pierwszych
  krokach przy tworzeniu stacji bezdyskowych. Moje mini-howto nie prbuje
  w aden sposb zamieni jego pracy, ale rozszerzy j posugujc si moimi
  dowiadczeniami.

  Chciabym take podzikowa Markowi Kushinsky (htmlurl
  url="mailto:mark026@ibm.net" name="mark026@ibm.net") za
  "wypolerowanie" stylu i sprawdzenie poprawnoci jzykowej tego Howto, co
  znacznie poprawio jego czytelno.


  22..  PPrrzzeeddmmoowwaa..


  Dokument ten zosta napisany, aby pomaga ludziom, ktrzy chc uywa
  montowania gwnego systemu plikw z sieci, eby stworzy katalogi klienta.
  Zauwa, e jest wiele sposobw na zrobienie tego, zalenie od twoich
  potrzeb i intencji. Jeli klienci s indywidualni a kady z nich ma
  wasnych uytkownikw i administratora konieczne bdzie, aby znaczce
  katalogi klienta nie byy wspdzielone z innymi klientami. Z drugiej
  strony, jeli klient jest przeznaczony dla wielu uytkownikw i wszystkie
  s administrowane przez t sam osob (na przykad, klasa komputerowa),
  tyle plikw ile si tylko da musi by wspodzielone, aby uczyni zarzdzanie
  prostszym. Dokument ten skupi si na tym drugim zagadnieniu.


  22..11..  PPrrzzeegglldd ooggllnnyy..


  Podczas tworzenia katalogu gwnego dla klienta oraz prb limitowania do
  minimum rozmiaru tego katalogu, gwnie skupiamy si na tym, ktre pliki
  moemy wspdzieli albo montowa z serwera. W tym Howto bd zaleca
  konfiguracj klienta na podstawie moich dowiadcze. Ale zanim zaczniemy
  zapamitaj:


  +o  Dokument ten nie wyjania jak waciwie zamontowa gwny system plikw.
     Jeli chcesz wicej informacji, to odwoaj si do NFS-Root mini-howto
     <http://www.ippt.gov.pl/~ppogorze/Linux/JTZ/html/NFS-Root.pl.html>.

  +o  Wikszo mojej konfiguracji jest zrobiona poprzez montowanie i
     symboliczne doczenia. Wiele z tym docze moe zosta zastpiona
     doczeniami staymi. Wybierz w zalenoci od wasnych upodoba. Robienie
     doczenia staego poprzez montowanie czy doczenie symboliczne ma
     swoje zalety, ale moe te powodowa problemy. Plik nie zostanie
     skasowany dopki wszystkie stae doczenia do niego nie zostan
     zlikwidowane. Przez to, jeli bdziesz uaktualnia jaki plik,
     dowizania bd cigle wskazyway na stary plik. Musisz wic sprawdza za
     kadym razem wszystkie doczenia, ktre zrobie.

  +o  Podczas montowania informacji z serwera mona uy dwch sposobw.
     Pierwszy (bardziej popularny), to zamontowa cay katalog gwny
     serwera pod jaki lokalny katalog a nastpnie zmieni ciek albo doczy
     tam odpowiednie katalogi. Osobicie nie lubi montowania katalogu
     gwnego serwera na stacji roboczej. Dlatego, poniszy dokument
     sugeruje montowanie odpowiednich podkatalogw z serwera na
     odpowiadajce im katalogi na stacji.

  +o  Dokument ten jest zrobiony na podstawie moich dowiadcze dotyczcych
     robienia katalogw klienta na dystrybucji Slackware 3.1. Poszczeglne
     pliki mog si rni (szczeglnie rc.*), ale oglna idea powinna pozosta
     ta sama.


  33..  TTwwoorrzzeenniiee ggwwnneeggoo kkaattaalloogguu kklliieennttaa..



  33..11..  TTwwoorrzzeenniiee ddrrzzeewwaa kkaattaallooggww..


  Przede wszystkim musisz stworzy struktur katalogw. Ja stworzyem
  wszystkie katalogi w /clients/hostname i bd uywa tego katalogu do
  przykadw. Chocia jeli chcesz, to moesz sobie zmieni ten katalog na
  inny. Pierwszym krokiem jest zrobienie odpowiednich katalogw. Powinny
  to by nastpujce:


      bin, dev, etc, home, lib, mnt, proc, sbin, server, tmp, usr, var



  i wszelkie inne katalogi jakie chcesz mie na stacji.

  Katalogi _l_o_c_a_l_, _p_r_o_c _i _d_e_v bd uyte oddzielnie dla kadej stacji, a
  reszta bdzie wspdzielona.


  33..22..  TTwwoorrzzeenniiee mmiinniimmaallnneeggoo ssyysstteemmuu pplliikkww ppoottrrzzeebbnneeggoo ddoo ssttaarrttuu..



  33..22..11..  TTwwoorrzzeenniiee kkaattaalloogguu ddeevv..


  Waciwie katalog _d_e_v moe by wspdzielony, ale lepiej jeli nie jest.
  Zawarto tego katalogu moesz stworzy odpowiednim skryptem, chcocia
  prociej jest go po prostu skopiowa z serwera:


  ______________________________________________________________________
       cp -a /dev /clients/hostname
  ______________________________________________________________________



  Musisz pamita, e /dev/mouse, /dev/cdrom i /dev/modem s symbolicznymi
  dowizaniami to waciwych urzdze, i dlatego powiniene si upewni, e
  wskazuj one na poprawne urzdzenia zgodnie ze sprztem w stacji.




  33..22..22..  KKooppiioowwaanniiee ppoottrrzzeebbnnyycchh bbiinnaarriiww..


  Pomimo, i montujemy wszystko z serwera jest pewna minimalna ilo plikw,
  ktre musimy skopiowa do kadego klienta. Przede wszystkim potrzebujemy
  _i_n_i_t_-_a, nasz system nie bdzie w stanie uruchomi czegokolwiek przed
  uruchomieniem _i_n_i_t_-_a (czego autor dowiadczy na wasnej skrze ;) ). Tak
  wic najpierw skopiuj /sbin/init do katalogu _s_b_i_n klienta, potem
  skopiuj /bin/sh do katalogu _b_i_n klienta, eby skrypt rc.S mg si wykona.
  eby wszystko zamontowa potrzebujesz take programu _m_o_u_n_t - skopiuj go
  do katalogu _s_b_i_n klienta. To jest zupene minimum zakadajc, e pierwsz
  linijk w _r_c_._S jest


        mount -av



  Zalecam jednak skopiowanie jeszcze kilku plikw: _u_p_d_a_t_e_, _l_s_, _r_m_, _c_p
  _o_r_a_z _u_m_o_u_n_t, tak eby mia podstawowe narzdzia w razie gdyby klientowi
  nie powiodo si montowanie. Jeli zostawisz lini waczajc swap przed lini
  montujc katalogi, to musisz take skopiowa program _s_w_a_p_o_n.

  Poniewa wikszo z tych programw jest dynamicznie czona z bibliotekami,
  bdziesz te potrzebowa sporej czci katalogu /lib:


  ______________________________________________________________________
      cp -a /lib/ld.* /lib/libc.* /lib/libcursses.* /client/hostname/lib
  ______________________________________________________________________



  Rozwa te moliowo staego dowizania zamiast kopiowania. Przeczytaj mj
  komentarz na ten temat w sekcji ``Przegld oglny''.

  Zauwa, e powysze informacje zakadaj, e parametry sieciowe zostay
  przekazane do jdra podczas startu. Jeli masz zamiar uy RARP lub BOOTP,
  bdziesz take potrzebowa odpowiednich binariw.

  Oglnie potrzebujesz minimum te programy, ktre pozwol ci skonfigurowa
  sie i uruchomi skrypt _r_c_._S do momentu zamontowania wszystkich katalogw
  z serwera.


  33..22..33..  KKaattaalloogg vvaarr..


  W wikszoci przypadkw katalog _v_a_r powinien by osobny dla kadego
  klienta. Chocia wiele danych moe by wspdzielonych. Stwrz w katalogu
  gwnym stacji katalog _v_a_r.  Zamontujemy tam katalog _v_a_r z serwera. Aby
  stworzy katalog _v_a_r napisz:


  ______________________________________________________________________
      cp -a /var /clients/hostname/
  ______________________________________________________________________



  Teraz moesz wybra co chcesz wspdzieli, a co chcesz mie osobne dla
  kadego klienta. Kady plik/katalog, ktry chcesz wspdzieli usu i stwrz
  symboliczne doczenie do /serwer/var. Zauwa, e musisz doczy go albo do
  katalogu /serwer/var albo do ../serwer/var, ale NNIIEE do
  /clients/hostname/serwer/var poniewa nie bdzie to dziaao kiedy zmieni
  si katalog gwny.
  Oglnie polecabym oddzieli katalogi /var/run, /var/lock, /var/spool,
  oraz /var/log.


  33..22..44..  RReesszzttaa kkaattaallooggww..



  +o  _e_t_c jest wyjaniony dokadnie w nastpnej sekcji

  +o  _m_n_t _i _p_r_o_c s przeznaczone do celw lokalnych

  +o  _u_s_r _i _h_o_m_e s tylko katalogami do zamontowania

  +o  _t_m_p zaley od ciebie. Moesz stworzy rne katalogi _t_m_p dla klientw,
     albo stworzy kilka katalogw /clients/tmp i zamontowa je dla kadego
     klienta pod /tmp. Ja zalecabym osobne katalogi _t_m_p dla kadego
     klienta.


  33..33..  TTwwoorrzzeenniiee kkaattaalloogguu eettcc oorraazz kkoonnffiigguurraaccjjaa kklliieennttaa..


  Zapamitaj - sekcja ta odnosi si do tworzenia katalogu _e_t_c, ktry w
  wikszoci przypadkw jest wspdzielony midzy klientami. Jeli twoi klienci
  maj osobnych administratorw, najlepiej zrobi osobne katalogi _e_t_c dla
  kadego klienta.


  33..33..11..  TTwwoorrzzeenniiee kkaattaalloogguu ddllaa wwsszzyyssttkkiicchh kklliieennttww..


  Pomimo, i oddzielamy katalogi _e_t_c, to i tak wiksz cz stamtd chcemy
  wspdzieli. Oglnie sdz, e wspdzielenie katalogu _e_t_c z serwerem nie jest
  dobrym pomysem, dlatego zalecam stworzenie katalogu /clients/etc, w
  ktrym bd przechowywane informacje dla klientw. Na pocztek po prostu
  skopiuj katalog _e_t_c serwera do katalogu dla klientw.

  Powiniene doda do tego katalogu wszystkie pliki konfiguracyjne nie
  zwizane z konkretnym komputerem, np.: _m_o_t_d_, _i_s_s_u_e itp., ale nie
  specyficzne dla komputera (_f_s_t_a_b _c_z_y _i_n_i_t_t_a_b).

  Najwaniejsze zmiany bd w katalogu _r_c_._d. Najpierw powiniene zmieni
  _r_c_._i_n_e_t_1, tak aby odzwierciedla twoj lokaln sytuacj. Ja przekazuj
  parametry sieciowe do jdra podczas startu, dlatego wyrzuciem prawie
  wszystko z tego pliku. Jedynymi poleceniami jakie tam zostawiem, to
  _i_f_c_o_n_f_i_g _i _r_o_u_t_e konfigurujce urzdzenie loopback (localhost). Jeli
  uywasz RARP-a albo BOOTP, to bdziesz musia je stosowanie zrobi.

  Po drugie powiniene wyedytowa swj plik _r_c_._S. Najpierw wyrzu stamtd
  wszystko co dotyczy sprawdzania dysku (polecenia _f_s_c_k) poniewa bdzie
  to robione przy starcie serwera. Potem powiniene znale lini, ktra
  montuje twoje katalogi; powinna wyglda mniej wicej tak:


        mount -avt nonfs



  Parametr _-_t _n_o_n_f_s jest dlatego, e normalne stacje robocze najpierw
  wykonuj skrypt _r_c_._S a potem _r_c_._i_n_e_t_1, aby skonfigurowa Ethernet.
  Poniewa to spowodowaoby, e aden system NFS nie zamontowaby sie linia
  ta powinna zosta usunita. Zmie j na:



       mount -av



  Jeli musisz uruchomi RARP/BOOTP, aby skonfigurowa swoj sie, zrb to w
  _r_c_._S (albo wywoaj odpowiedni skrypt z _r_c_._S) przed montowaniem i
  upewnij si, ze twoje fizyczne katalogu _b_i_n _i _s_b_i_n zawieraj potrzebne
  programy.

  Po poleceniu _m_o_u_n_t _-_a_v bdziesz mia dziaajcy system plikw. Stwrz oglny
  plik _f_s_t_a_b, tak eby mg go skopiowa dla kadego klienta. Powinien on
  wyglda mniej wicej tak:


      server/nfs                                          default  1 1
      server:/bin                 /bin            nfs     default  1 1
      server:/usr                 /usr            nfs     default  1 1
      server:/sbin                /sbin           nfs     default  1 1
      server:/home                /home           nfs     default  1 1
      server:/lib                 /lib            nfs     default  1 1
      server:/clients/etc         /server/etc     nfs     default  1 1
      server:/clients/var         /server/var     nfs     default  1 1
      none                        /proc           proc    default  1 1



  Upewnij si take, e plik /etc/exports na serwerze wyglda tak:


      /clients/hostname   hostname.domainname(rw,no_root_squash)
      /clients/etc        hostname.domainname(ro,no_root_squash)
      /clients/var        hostname.domainname(ro,no_root_squash)
      /usr                hostname.domainname(ro,no_root_squash)
      /sbin               hostname.domainname(ro,no_root_squash)
      /bin                hostname.domainname(ro,no_root_squash)
      /lib                hostname.domainname(ro,no_root_squash)
      /home               hostname.domainname(rw,no_root_squash)



  We wszystkich liniach oprcz pierwszej powiniene wstawi jak mask, do
  ktrej pasuj wszystkie komputery bdce klientami (np. pc*.twoja.domena).
  Sugeruj, eby wikszo katalogw bya tylko-do-odczytu, ale to zaley od
  ciebie. Parametr _n_o___r_o_o_t___s_q_u_a_s_h spowoduje, e uytkownicy "root" na
  kliencie bd take mieli przywileje "root-a" na serwerze. Sprawd _m_a_n
  _e_x_p_o_r_t_s. Jeli chcesz, eby uytkownicy na klientach mogli uruchamia
  _p_a_s_s_w_d , to sprawd czy katalog _e_t_c jest zamontowany z prawem zapisu,
  chocia osobicie tego nie polecam.

  Zauwa jeszcze jedno dotyczce skryptu _r_c_._S. Domylnie w Slackware pliki
  /etc/issue i /etc/motd s tworzone od nowa po kadym resetwoaniu
  serwera. Jeli pliki te s montowane bez zapisu, to funkcja ta MMUUSSII
  zosta wyczona a ja zalecabym wyczy j na zapas.

  I ostatnia sprawa. Jeli chcesz mie t sam baz uytkownikw na kliencie i
  na serwerze, to musisz wybra midzy:


  1. uywaniem NIS-a (Yellow Pages, sprawd NIS-HOWTO
     <ftp://ftp.icm.edu.pl:/pub/Linux/sunsite/docs/HOWTO/NIS-HOWTO>, a
     potem kady klient bdzie mia osobne pliki /etc/passwd i /etc/group
     jak je otrzyma od serwera.

  2. w wikszoi wypadkw, proste symboliczne doczenie wystarczy. Dlatego
     bdziesz musia, albo doczy na stae /clients/etc/passwd do
     /etc/passwd, albo jeli wolisz doczenia symboliczne to doczy
     /etc/passwd do /clients/etc/passwd (nie w drug stron, poniewa
     klienci nie montuj katalogu _e_t_c serwera). To samo dla /etc/group.



  33..33..22..  TTwwoorrzzeenniiee kkaattaalloogguu eettcc ddllaa kklliieennttaa..


  Oglnie, wikszo plikw w katalogu _e_t_c klienta powinna by doczona
  symbolicznie do plikw z katalogu _e_t_c serwera. Ale niektre z nich s rne
  dla kadej maszyny, a niektre po prostu musz si tam znajdowa kiedy
  aduje si jdro. Oto minimalna zawarto katalogu _e_t_c:


      resolv.conf
      hosts
      inittab
      rc.d/rc.S
      fstab



  Poniewa te pi plikw moe by identyczne dla kadego klienta, moesz je
  skopiowa, albo doczy na stae. Chocia zaleca si eby pliki _r_c_._S i _f_s_t_a_b
  byy osobne dla kadego klienta. Bdziesz take potrzebowa osobnego pliku
  _H_O_S_T_N_A_M_E dla kadego klienta. Osobicie uwaam, e cay podkatalog _r_c_._d
  powinien by osobny dla kadego klienta poniewa konfiguracja i sprzt mog
  si rni.

  Dla kadego klienta dodaj do _f_s_t_a_b odpowiedni lini dla swapa:


      /dev/swap_prttn                     swap    swap    default  1 1



  Reszta plikw z _e_t_c klienta moe by albo doczona na stae do plikw
  /clients/etc/* albo podczona symbolicznie do /serwer/etc (ktry jest
  punktem do montowaina dla /clients/etc).

  Upewnij si, e twj klient umie poprawnie rozwizywa nazwy kanoniczne
  poprzez _n_a_m_e_d albo etc/hosts. Nie jest zym pomysem trzymanie IP
  serwera w pliku etc/hosts, zamiast liczy na rozwizywanie nazw. Jeli
  bdziesz liczy tylko na to, to problem z _n_a_m_e_d_-_e_m spowoduje, e twoi
  klienci nie bd mogli wystartowa.


  33..44..  SSttaarrttoowwaanniiee..


  Teraz wszystko, co musisz zrobi to zrestartowa komputer, trzyma kciuki
  i mie nadziej, e wszystko pjdzie gadko. :)


  44..  TTwwoorrzzeenniiee wwiikksszzeejj iillooccii kklliieennttww..


  Jeli przestrzegae moich instrukcji, to powinno to by proste:


      cd /clients/
      cp -a hostname1 hostname2




  a potem upewnij si, e sprawdzie to:


  +o  pliki rc.d/* odpowiadaj sprztowi i konfiguracji oprogramowania

  +o  linia dotyczca swap-a w _f_s_t_a_b jest poprawna

  +o  symboliczne dowizania _d_e_v_/_m_o_u_s_e_, _d_e_v_/_m_o_d_e_m _o_r_a_z _d_e_v_/_c_d_r_o_m s
     poprawne.

  PPoowwooddzzeenniiaa ......


  44..11..  OOdd ttuummaacczzaa..


  Tumaczenie to jest chronione prawami autorskimi (C) Bartosza
  Maruszewskiego.  Dozwolone jest rozprowadzanie i dystrybucja na
  prawach takich samych jak dokument oryginalny.

  Jeli znalaze jakie race bdy ortograficzne, gramatyczne, skadniowe,
  techniczne to pisz do mnie:

  B.Maruszewski@zsmeie.torun.pl

  Oficjaln stron tumacze HOWTO jest http://www.jtz.org.pl/

  Aktualne wersje przetumaczonych dokumentw znajduj si na teje stronie.
  Dostpne s take poprzez anonimowe ftp pod adresem ftp.ippt.gov.pl w
  katalogu /pub/Linux/JTZ/.

  Przetumaczone przeze mnie dokumenty znajduj si take na mojej stronie
  WWW. <http://www.zsmeie.torun.pl/~bart/tlumaczenie.html> S tam te
  odwoania do Polskiej Strony Tumaczeniowej.

  Kontakt z nasz grup, grup tumaczy moesz uzyska poprzez list dyskusyjn
  jtz@ippt.gov.pl. Jeli chcesz sie na ni zapisa, to wylij list o treci
  subscribe jtz Imi Nazwisko na adres listproc@ippt.gov.pl




























