Client

!!! Polish to English translation required !!!

NFS w skrocie to usługa pozwalająca udostępniać zasoby dyskowe komputerom w sieci. Serwer udostępnia katalog(i) klientom, którzy mogą je podmontować i działać jak na lokalnym systemie plików

NFS Server



1) Instalujemy serwer NFS

sudo apt-get install nfs-kernel-server nfs-common portmap

2) Konfigurujemy portmap

sudo dpkg-reconfigure portmap 
sudo /etc/init.d/portmap restart

3) Edytujemy plik /etc/exports aby stworzyc nowe udzialy NFS

sudo vim /etc/exports


W pliku /etc/exports definiuje się udostępniane katalogi, ich listę podajemy w postaci wierszy, które mają następującą składnię

$katalog  $klient1($opcja1,$opcja2,...)  $klient2($opcja1,$opcja2,...)

$katalog - jest to nasz udostępniony katalog.

$klient - podajemy tu IP lub nazwe komputera, któremu chcemy udostępnić katalog lub cala sieć za pomocą maski.

$opcje - tutaj ustalamy m.in. czy zasób ma być udostępniony RO, czy także RW, oraz nałożyć inne ograniczenia. Wszystkie opcje opisane są w manualu (man exports).

Kilka przykladow co mozna tam umiescic:

#Pelne prawa odczytu i zapisu z dowolnogo komputera od ip 192.168.1.1 do 192.168.1.255 
/files 192.168.1.1/24(rw,no_root_squash,async) 

#Tylko odczyt z danego ip 
/files 192.168.1.2 (ro,async) 


4) Zapisz plik i wykonaj poniższą komende

sudo /etc/init.d/nfs-kernel-server restart

5) Po wykonaniu jakich kolwiek zmian w /etc/exports musisz wyeksportowac katalogi. Przed tym jednak możemy sprawdzić czy nasze wpisy są poprawne:

exportfs -v

Polecenie to wyświetli listę katalogów gotowych do wyeksportowania, jeśli któryś z udziałów nie jest wyświetlony, to prawdopodobnie popełniliśmy jakiś błąd w składni. Gdy jesteśmy pewni, że chcemy udostępnić udziały NFS, to wydajemy polecenie:

exportfs -rv



NFS Client


1) Montowanie reczne Przykladowo aby zamontowac udzial /pliki z serwera jakis.server.com w katalogu /media/pliki (oczywiście punkt montowania musi istnieć) wykonujemy

sudo mount -t nfs jakis.server.com:/pliki /media/pliki

Oczywście zamiast jakis.server.com można używać adresów IP tak jak wspomniałem wcześniej

2) Automatyczne montowanie przystarcie systemu. Edytujemy /etc/fstab

sudo vim /etc/fstab

a następnie według naszego przykładu dodajemy

jakis.server.com:/pliki /media/pliki nfs rw,hard,intr

hard oznacza, że programy korzystające z zasobów NFS w momencie awarii serwera zostaną zawieszone w oczekiwaniu na dostęp do danych i nie będzie możliwości ich odwieszenia w postaci polecenia kill, chyba, że dodamy opcję intr dzięki czemu będziemy mogli zabić dany proces. Zamiast hard możemy użyć opcji soft, jednak w przypadku awarii serwera NFS sygnalizuje błąd programom korzystającym z zasobów. Wadą tego rozwiązania jest to, że nie wszystkie programy potrafią poradzić sobie z takim komunikatem i może dojść do utraty danych.

Bezpieczeństwo serwera


Musimy zadbać o bezpieczeństwo naszego serwera, podstawowym sposobem zabezpieczania zasobu jest ograniczenie dostępu. Możemy go ograniczać za pomocą ustawień w pliku /etc/exports lub za pomocą plików /etc/hosts.allow i /etc/hosts.deny, co zostało przedstawione poniżej.

Najpierw blokujemy wszystkim dostęp do naszych usług wpisując do pliku pliku /etc/hosts.deny

portmap:ALL                                                                     
lockd:ALL                                                                       
mountd:ALL                                                                      
rquotad:ALL                                                                     
statd:ALL

Następnie w /etc/hosts.allow wpisujemy komputery, którym zezwalamy na korzystanie z wymienionych usług. Możemy zarówno wpisać adresy IP komputerów jak i całą podsieć.

portmap: 192.168.0.0/255.255.255.0                                              
lockd: 192.168.0.0/255.255.255.0                                                
rquotad: 192.168.0.0/255.255.255.0                                              
mountd: 192.168.0.0/255.255.255.0                                               
statd: 192.168.0.0/255.255.255.0



Dostrajanie wydajności


Wolne działanie protokołu NFS wskazuje przeważnie na brak odpowiedniego dostrojenia połączenia, wystarczy ustawić kilka opcji by uzyskać zaskakująco duży wzrost wydajności. Podane poniżej zalecenia dotyczą konfiguracji klienta.

Na początek zajmiemy się opcjami rsize i wsize. Dzięki nim możemy zwiększyć szybkość odczytu i zapisu plików na serwer. Manual systemowy radzi by ustawić im na wartości: rsize=8192 i wsize=8192. Linijka w pliku /etc/fstab będzie wyglądać teraz następująco:

jakis.server.com:/pliki /media/pliki   nfs      rw,hard,intr,rsize=8192,wsize=8192  0     0

Lektura http://google.pl
autor: Sir_Yaro HOW-TO]
Dokumentacja PLD]

NFS_(Network_File_System)_Server/Client (last edited 2008-08-06 16:21:24 by localhost)