Provided by:
manpages-pl_20051117-1_all 
NAZWA
exports - systemy plików eksportowane w systemie NFS
SKŁADNIA
/etc/exports
OPIS
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.
Opcje ogólne
secure ta opcja wymaga aby żądania pochodzące z portu mniejszego niż
IPPORT_RESERVED (1024). Standardowa ta opcja jest włączona, aby
ją wyłączyć należy napisać insecure.
ro ta opcja zezwala na zamontowanie punktu w trybie tylko do
czytania. Standardowo zezwala się na operację pisania, co można
zaznaczyć jawnie za pomocą opcji rw .
link_relative
ta opcja powoduje zamienianie bezwzględnych dowiązań
symbolicznych (zawartość dowiązania rozpoczyna się znakiem '/')
na dowiązania względne, przed dostawianie odpowiedniej liczby
sekwencji '../' tak, aby z katalogu zawierającego dowiązanie
dostać się na katalog główny. Ta opcja ma subtelną, może nawet
niepoprawną, semantykę w przypadkach, gdy hierarchia plików nie
jest montowana w katalogu głównym '/'.
link_absolute
ta opcja powoduje pozostawienie wszystkich dowiązań
symbolicznych bez żadnych zmian. Jest to zachowanie standardowe.
Przyporządkowywanie identyfikatora UID
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:
root_squash
Zamień żądania z identyfikatorami uid/gid 0 na żądania
pochodzące od anonimowych identyfikatorów uid/gid. Należy
zwrócić uwagę, że nie dotyczy to żadnych innych identyfikatorów,
które mogłyby być podobnie wrażliwe np. użytkownik bin.
no_root_squash
Wyłącz 'root squashing'. Ta opcja jest użyteczna przede
wszystkim w odniesieniu do bezdyskowych klientów.
squash_uids i squash_gids
Te opcje określają listę identyfikatorów uid i gid, które
powinny podlegać zamianie na identyfikatory anonimowe. Poprawna
lista identyfikatorów może wyglądać następująco:
squash_uids=0-15,20,25-50
Zwykle wygląda to trochę prościej:
squash_uids=0-100
all_squash
Zamień wszystkie identyfikatory uid i gid na identyfikatory
anomimowego użytkownika. Pożyteczne w przypadku publicznie
dostępnych katalogów FTP, news itp. Opcją o przeciwnym znaczeniu
jest no_all_squash, która obowiązuje domyślnie.
map_daemon
Ta opcja włącza dynamiczną zamianę identyfikatorów uid/gid.
Każdy identyfikator w żądaniu NFS będzie zamieniony na
odpowiedni identyfikator obowiązujący na serwerze i każdy
identyfikator w odpowiedzi NFS będzie zamieniany w przeciwną
stronę. Ta opcja wymaga uruchomienia na komputerze kliencie
demona rpc.ugidd(8). Ustawieniem domyślnym jest map_identity,
pozostawiające wszystkie identyfikatory bez zmian. Zwykłe opcje
zamiany (squash options) mają zastosowanie niezależnie od
zastosowania zamiany dynamicznej.
anonuid i anongid
Te opcje pozwalają na jawne nadanie identyfikatorom uid i gid
użytkownika anonimowego dowolnych wartości. Są szczególnie
użyteczne dla klientów PC/NFS, kiedy często chcemy aby wszystkie
żądania pochodzące z klientów PC/NFS były traktowane tak, jak
gdyby pochodziły od jednego użytkownika. Rozważmy podany poniżej
przykład dla katalogu /home/joe, który zamienia wszyskie żądania
tak, jak gdyby pochodziły od użytkownika o identyfikatorze 150
(prawdopodobnie identyfikator użytkownika joe).
PRZYKŁAD
# 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).
SZTUCZKI
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.
PLIKI
/etc/exports
Plik konfiguracyjny demona nfsd(8).
/etc/passwd
Plik konfiguracyjny z informają o użytkownikach.
DIAGNOSTYKA
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.
ZOBACZ TAKŻE
mountd(8), nfsd(8), nfs(5), passwd(5).