Wyszukiwanie w witrynie

Jak zainstalować i skonfigurować serwer NFS na Ubuntu 22.04


NFS (Network File Share) to protokół umożliwiający udostępnianie katalogów i plików innym klientom systemu Linux w sieci. Katalog do udostępnienia jest zwykle tworzony na serwerze NFS i dodawane są do niego pliki.

Systemy klienckie montują katalog znajdujący się na serwerze NFS, który zapewnia im dostęp do utworzonych plików. NFS przydaje się, gdy trzeba współdzielić wspólne dane między systemami klienckimi, zwłaszcza gdy kończy się na nich miejsce.

Ten przewodnik będzie składał się z 2 głównych sekcji: Instalowanie i konfigurowanie serwera NFS na Ubuntu 22.04, 20.04 i 18.04 oraz instalowanie klienta NFS na komputerze kliencki system Linux.

Instalacja i konfiguracja serwera NFS na Ubuntu

Aby zainstalować i skonfigurować serwer NFS, wykonaj czynności opisane poniżej.

Krok 1: Zainstaluj serwer jądra NFS w Ubuntu

Pierwszym krokiem jest zainstalowanie na serwerze pakietu nfs-kernel-server. Ale zanim to zrobimy, zaktualizujmy najpierw pakiety systemowe za pomocą następującego polecenia apt.

sudo apt update

Po zakończeniu aktualizacji kontynuuj i zainstaluj pakiet nfs-kernel-server, jak pokazano poniżej. Spowoduje to przechowywanie dodatkowych pakietów, takich jak nfs-common i rpcbind, które są równie istotne dla konfiguracji udziału plików.

sudo apt install nfs-kernel-server

Krok 2: Utwórz katalog eksportu NFS

Drugim krokiem będzie utworzenie katalogu, który będzie współdzielony pomiędzy systemami klienckimi. Nazywa się to również katalogiem eksportu i to w tym katalogu będziemy później tworzyć pliki, które będą dostępne dla systemów klienckich.

Uruchom poniższe polecenie, podając nazwę katalogu montowania NFS.

sudo mkdir -p /mnt/nfs_share

Ponieważ chcemy, aby wszystkie komputery klienckie miały dostęp do udostępnionego katalogu, usuń wszelkie ograniczenia w uprawnieniach katalogu.

sudo chown -R nobody:nogroup /mnt/nfs_share/

Możesz także dostosować uprawnienia do plików zgodnie ze swoimi preferencjami. Oto nadaliśmy uprawnienia do odczytu, zapisu i wykonywania całej zawartości katalogu.

sudo chmod 777 /mnt/nfs_share/

Krok 3: Przyznaj dostęp współdzielony NFS do systemów klienckich

Uprawnienia dostępu do serwera NFS są zdefiniowane w pliku /etc/exports. Otwórz więc plik za pomocą swojego ulubionego edytora tekstu:

sudo vim /etc/exports

Można zapewnić dostęp pojedynczemu klientowi, wielu klientom lub określić całą podsieć.

W tym przewodniku umożliwiliśmy całej podsieci dostęp do udziału NFS.

/mnt/nfs_share  192.168.43.0/24(rw,sync,no_subtree_check)

Wyjaśnienie opcji użytych w powyższym poleceniu.

  • rw: oznacza odczyt/zapis.
  • synchronizacja: wymaga zapisania zmian na dysku przed ich zastosowaniem.
  • No_subtree_check: eliminuje sprawdzanie poddrzewa.

Aby przyznać dostęp pojedynczemu klientowi, użyj składni:

/mnt/nfs_share  client_IP_1 (re,sync,no_subtree_check)

W przypadku wielu klientów określ każdego klienta w osobnym pliku:

/mnt/nfs_share  client_IP_1 (re,sync,no_subtree_check)
/mnt/nfs_share  client_IP_2 (re,sync,no_subtree_check)

Krok 4: Eksportuj katalog udostępniania NFS

Po przyznaniu dostępu do preferowanych systemów klienckich wyeksportuj katalog współdzielony NFS i zrestartuj serwer jądra NFS, aby zmiany zaczęły obowiązywać.

sudo exportfs -a
sudo systemctl restart nfs-kernel-server

Krok 5: Zezwól na dostęp NFS przez zaporę sieciową

Aby klient mógł uzyskać dostęp do udziału NFS, musisz zezwolić na dostęp przez zaporę sieciową, w przeciwnym razie dostęp i montaż udostępnionego katalogu będą niemożliwe. Aby to osiągnąć, uruchom polecenie:

sudo ufw allow from 192.168.43.0/24 to any port nfs

Załaduj ponownie lub włącz zaporę (jeśli była wyłączona) i sprawdź stan zapory. Port 2049, który jest domyślnym udziałem plików, powinien być otwarty.

sudo ufw enable
sudo ufw status

Zainstaluj klienta NFS w systemach klienckich

Skończyliśmy instalowanie i konfigurowanie usługi NFS na Serwerze, teraz zainstalujmy NFS na systemie klienckim.

Krok 1: Zainstaluj pakiet wspólny NFS

Jak zwykle, zacznij od aktualizacji pakietów systemowych i repozytoriów, zanim cokolwiek innego.

sudo apt update

Następnie zainstaluj pakiety nfs-common, jak pokazano.

sudo apt install nfs-common

Krok 2: Utwórz punkt podłączenia NFS na kliencie

Następnie musisz utworzyć punkt montowania, w którym zamontujesz udział nfs z serwera NFS. Aby to zrobić, uruchom polecenie:

sudo mkdir -p /mnt/nfs_clientshare

Krok 3: Zamontuj udział NFS w systemie klienckim

Ostatnim pozostałym krokiem jest zamontowanie udziału NFS udostępnianego przez serwer NFS. Umożliwi to systemowi klienckiemu dostęp do udostępnionego katalogu.

Sprawdźmy adres IP serwera NFS za pomocą polecenia ifconfig.

ifconfig

Aby to osiągnąć, uruchom polecenie:

sudo mount 192.168.43.234:/mnt/nfs_share  /mnt/nfs_clientshare

Krok 4: Testowanie udziału NFS w systemie klienckim

Aby sprawdzić, czy nasza konfiguracja NFS działa, utworzymy kilka plików w katalogu udziałów NFS znajdującym się na serwerze.

cd /mnt/nfs_share/
touch file1.txt file2.txt file3.txt

Teraz wróć do systemu klienta NFS i sprawdź, czy pliki istnieją.

ls -l /mnt/nfs_clientshare/

Świetnie! Dane wyjściowe potwierdzają, że możemy uzyskać dostęp do plików, które właśnie utworzyliśmy na serwerze NFS!

I to wszystko. W tym przewodniku przeprowadziliśmy Cię przez instalację i konfigurację serwera NFS na Ubuntu 22.04, Ubuntu 20.04 i Ubuntu 18.04 . NFS jest obecnie rzadko używany i został zdegradowany na rzecz solidniejszego i bezpieczniejszego protokołu współdzielenia Samba.