Jak hostować udziały NFS w systemie Linux

Jeśli jesteś średnio wykwalifikowanym użytkownikiem Linuksa lub początkującym z serwerem, głównym sposobem uzyskiwania dostępu do plików jest Samba. Wielu robi to ze względu na to, jak trudne wydaje się być NFS. Jest tak wiele kroków i małych rzeczy, które musisz zrobić dobrze w porównaniu do czegoś takiego jak Samba lub nawet FTP. Fakt, że wielu użytkowników Linuksa przechodzi przez NFS, to prawdziwy wstyd, ponieważ ma wiele świetnych funkcji i zastosowań. Dlatego zdecydowaliśmy się wyeliminować trudności związane z konfiguracją serwera NFS. Przeanalizujemy, w jaki sposób można hostować udziały NFS w systemie Linux i wyjaśnimy szczegółowo, w jaki sposób można uruchomić i uruchomić serwer

Instalacja

Ogólnie rzecz biorąc, każda dystrybucja Linuksa ma te same narzędzia NFS z kilkoma różnicami tu i tam. Aby wszystko działało, otwórz terminal i zainstaluj następujące pakiety w swoim systemie. Pakiety te zainstalują domyślną technologię potrzebną do uruchomienia serwera, wygenerują domyślne pliki konfiguracyjne, a czasem nawet skonfigurują inne rzeczy.

Ubuntu

sudo apt install nfs-kernel-server

Fedora

sudo dnf install nfs-utils system-config-nfs

Arch Linux

sudo pacman -S nfs-utils

Debian

sudo apt-get install nfs-kernel-server

OpenSUSE

sudo zypper install nfs-kernel-server

Inne systemy Linux

System plików NFS, klient i serwer nie są nową technologią. W rezultacie z łatwością będziesz w stanie to uruchomić na prawie każdej dystrybucji Linuksa. Jeśli Twój system operacyjny nie został uwzględniony, rozważ wyszukanie „nfs utils” w menedżerze pakietów lub skorzystaj z witryny Wiki swojego systemu operacyjnego.

Usługi systemowe

Konfiguracja serwera NFS może się różnić w zależności od używanej dystrybucji Linuksa. Na przykład, jeśli zainstalujesz pakiet Ubuntu lub Debian NFS, usługi systemd zostaną automatycznie skonfigurowane i skonfigurowane. Jednak w przypadku czegoś takiego jak Arch Linux, SUSE lub Fedora itp. Musisz to zrobić ręcznie. Oto jak włączyć te usługi.

Jeśli używasz Arch Linux, otwórz SUSE lub Fedorę (lub dowolną dystrybucję Linuksa, która nie konfiguruje automatycznie usług systemd dla NFS), otwórz terminal i wprowadź te polecenia.

sudo systemctl enable rpcbind
sudo systemctl enable nfs-server 

sudo service rpcbind start 

sudo service nfs-server start

Konfiguracja

Instalując pakiety NFS, serwer jest „skonfigurowany”, ale to nie znaczy, że użytkownicy mają do niego jeszcze dostęp. W tym celu użytkownicy muszą ustawić eksport, lokalizacje plików itp. Aby rozpocząć, zdobądź powłokę roota w terminalu. Zrób to za pomocą: sudo -s

Plik eksportu może obsługiwać dowolny typ katalogu. W rzeczywistości użytkownicy mogą łatwo zapisać bezpośrednią lokalizację do folderu, który chcą udostępnić bezpośrednio w systemie plików. Problem w tym, że jest to ogromne zagrożenie bezpieczeństwa. O wiele bezpieczniej jest pobrać zawartość jednego katalogu i powiązać ją z innym. Gwarantuje to, że uprawnienia do folderów i katalogów w folderze / srv / nie muszą być modyfikowane, dzięki czemu wszystko jest bezpieczne.

Na przykład, aby skonfigurować udział NFS w folderze Obrazy użytkownika, wykonaj następujące czynności:

mkdir -p /srv/nfs/pictures /home/username/Pictures/

mount --bind /home/username/Pictures/ /srv/nfs/pictures/

Skorzystaj z powyższego przykładu, aby utworzyć dowolną liczbę montowań bindowania. Pamiętaj, że nie jest wymagane montowanie katalogów z folderów domowych. Zamiast tego skorzystaj z tego przykładu i bądź kreatywny.

Po rozwiązaniu tego wszystkiego uruchom te polecenia, aby wierzchowce się przykleiły:

echo '#NFS Pictures Bind Mount' >> /etc/fstab
echo '/home/username/Pictures/ /srv/nfs/pictures/ none bind 0 0' >> /etc/fstab

Uwaga: musisz zmienić polecenia echa, aby pasowały do ​​twoich własnych wierzchowców.

Po skonfigurowaniu montowań nadszedł czas, aby skonfigurować plik konfiguracji eksportu. Plik eksportu jest bardzo ważny, ponieważ w tym miejscu musisz określić każdy udział plików do wykorzystania przez NFS.

nano /etc/exports

W pliku eksportu przejdź na sam dół i napisz:

/srv/nfs/pictures/ 192.168.0.0/255.255.255.0(rw,sync,no_subtree_check)

Możesz napisać tyle wierszy, ile chcesz. Pamiętaj, że każdy udział potrzebuje własnego montowania, wpisu fstab i wpisu / etc / export.

Uwaga: zapisz plik eksportu za pomocą CTRL + O

Aktualizowanie zmian

Serwer NFS działa, pliki znajdują się we właściwym miejscu i wszystko jest gotowe do użycia. Pozostało tylko zaktualizować zmiany wprowadzone w pliku eksportu. Jest to ważny krok, ponieważ serwer NFS nie zaktualizuje zmian wprowadzonych podczas pracy. Dokonaj zmian za pomocą: exportfs -rav

W razie potrzeby zrestartuj proces serwera w samym systemied za pomocą polecenia systemctl restart.

sudo systemctl restart nfs-server.

Wniosek

Sieciowy system plików to przydatne narzędzie. Dzięki niemu użytkownicy mogą łatwo pobierać zdalne pliki i katalogi i pracować z nimi lokalnie, tak jak na fizycznym dysku twardym. To świetnie, ponieważ konkurencyjne narzędzia sieciowego systemu plików nie zapewniają użytkownikom takiej samej wszechobecności i swobody.

Pomimo jej przydatności większość ludzi woli zamiast tego używać Samby. Jest to zrozumiałe, ponieważ w porównaniu do Samby konfiguracja NFS może być nieco denerwująca i żmudna. Jeśli jednak poradzisz sobie z trudnym procesem konfiguracji, jest to o wiele bardziej warte.