| EXPORTS(5) | Administracja Systemem Linux | EXPORTS(5) |
exports - systemy plików eksportowane w systemie NFS
/etc/exports
Uwaga! To tłumaczenie może być nieaktualne!
Plik /etc/exports zawiera listę systemu plików, które mogą być eksportowane dla klientów systemu NFS. Jest wykorzystywany zarówno przez demona mountd(8) jak i przez demona servera plików w systemie NFS nfsd(8).
Format pliku jest zbliżony do stosowanego w systemie SunOS, z wieloma dodatkowymi rozszerzeniami. Każdy wiersz zawiera punkt montowania oraz listę komputerów lub nazwy grup (netgroups), które są uprawnione do montowania tego punktu. Po nazwie każdego komputera można podać umieszczoną w nawiasie listę parametrów, jakie należy zastosować w przypadku montowania danego punktu przez ten komputer. Puste wiersze są ignorowane, a znak # rozpoczyna komentarz kończący się wraz z wierszem.
Demon nfsd opiera swą kontrolę dostępu plików serwera na identyfikatorach uid i gid przesyłanych z każdym żądaniem NFS. Standardowym zachowaniem, jakiego można się spodziewać jest dostęp do własnych plików, tak jak byłyby one umieszczone na lokalnym systemie plików. Wymaga to użycia tych samych identyfikatorów użytkownika (uid) i grupy (gid) zarówno na serwerze, jak i na kliencie. Warunek ten nie jest zawsze spełniony, a czasami wręcz niepożądany.
Bardzo często jest niepożądane, by uzyskując dostęp do plików umieszczonych na serwerze administrator na komputerze kliencie był traktowany tak samo, jak gdyby był administratorem serwera. W tym celu identyfikator uid 0 pochodzący z żądań NFS jest zamieniony przez serwer na inny identyfikator, tzw. anonymous (anonimowy) lub nobody (nikt). Ten tryb pracy (zwany 'root squashing') jest zachowaniem domyślnym serwera, i może być wyłączony za pomocą opcji no_root_squash.
Domyślnie demon nfsd podczas uruchamiania próbuje pobrać identyfikatory uid i gid anonimowego użytkownika sprawdzając czy istnieje użytkownik nobody w pliku /etc/passwd. Jeśli taki użytkownik nie istnieje anonimowym identyfikatorom uid i guid jest nadawana wartosc -2 (65534). Wartości te mogą zostać zmienione za pomocą opcji anonuid i anongid.
Dodatkowo demon nfsd pozwala na określenie dowolnych identyfikatorów uid i guid jakie powinny zostać nadane anonimowemu użytkwnikowi (nobody). Ostatecznie można zmieniać wszystkie żądania na żądania pochodzące od anonimowego użytkownika przez podanie opcji all_squash.
Serwer nfsd udostępnia również możliwość dynamicznej zamiany identyfikatorów uid i gid servera na identyfikatory klienta i na odwrót. Włączane jest to za pomocą opcji map_daemon, zaś w tym celu wykorzystywany jest protokół UGID RPC. Dlatego, aby to przekodowanie pracowało poprawnie wymagane jest uruchomienie na komputerze kliencie demona ugidd(8).
Poniżej kompletna lista opcji zamiany identyfikatorów:
# przykładowy plik /etc/exports / master(rw) trusty(rw,no_root_squash) /projects proj*.local.domain(rw) /usr *.local.domain(ro) @trusted(rw) /home/joe pc001(rw,all_squash,anonuid=150,anongid=100) /pub (ro,insecure,all_squash)
Pierwszy wiersz eksportuje cały system plików dla komputerów master i trusty. Prócz prawa do zapisu w przypadku komputera trusty wyłączona jest również jakakolwiek zamiana identyfikatorów. Dryuga i trzecia pozycja dają przykład wykorzystania wzorców i grup (pozycja/grupa @trusted). Czwarty wiersz przedstawia przykład klienta PC/NFS omówionego powyżej. Ostatni wiersz eksportuje publicznie dostępny katalog FTP dla każdego komputera na świecie z zamianą identyfikatorów wszystkich żądań tak, jakby pochodziły od anonimowego użytkownika. Opcja insecure w tym wierszu pozwala na dostęp klientom z implementacją systemu NFS, która nie korzysta z zarezerwowanych portów (poniżej 1024).
W przeciwieństwie do innych implementacji serwer nfsd pozwala na eksportowanie do jednego klienta zarówno katalogu, jak i podkatalogów, np /usr i /usr/X11R6. W tym przypadku mają zastosowanie opcje występujące przy pozycji pliku /etc/exports najbardziej zbliżonej do montowanego katalogu. Np. jeśli użytkownik na komputerze kliencie sięga do pliku w katalogu /usr/X11R6, mają zastosowanie opcje podane dla pozycji /usr/X11R6. Ma to zastosowanie również wtedy, gdy ta pozycja zawiera wzorce lub grupy komputerów.
Przy każdorazowym uruchomieniu nfsd(8) lub mountd(8) błędy przy czytaniu pliku są raportowane za pomocą syslogd(8) na poziomie NOTICE od DAEMON'a. Raportowany jest każdy nieznany komputer, lecz w czasie startu systemu często nie wszystkie komputery są już znane demonowi named(8), więc jeśli zostaną znalezione później, to informacja o tym fakcie jest również raportowana przez syslogd(8), z tymi samymi parametrami co poprzednio.
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages-pl/.
| 6 styczeń 1996 | 4.2 Berkeley Distribution |