jak skonfigurować serwer NFS na CentOS 7 / RHEL 7

NFS oznacza Network File System, pomaga udostępniać pliki i foldery między systemami Linux / Unix, opracowany przez SUN Microsystems w 1990 roku. NFS umożliwia zamontowanie zdalnego udziału lokalnie.

ten przewodnik pomaga skonfigurować serwer NFS na CentOS 7 / RHEL 7.

zalety systemu NFS

  • współdzielenie plików / folderów pomiędzy systemami *nix
  • umożliwia lokalne montowanie zdalnych systemów plików
  • może działać jako scentralizowany system pamięci masowej
  • może być używany jako domena pamięci masowej ( Datastore) dla VMware i innych Platform wirtualizacji.
  • umożliwia aplikacjom współdzielenie plików konfiguracyjnych i danych z wieloma węzłami.
  • pozwala na aktualizowanie plików w całym udostępnieniu.

ważne usługi

poniżej przedstawiono ważne usługi NFS, zawarte w pakietach NFS-utils.

rpcbind: serwer rpcbind konwertuje numery programów RPC na adresy uniwersalne.

NFS-server: umożliwia Klientom dostęp do akcji NFS.

NFS-lock / RPC-statd: blokowanie plików NFS. Zaimplementuj odzyskiwanie blokad plików, gdy serwer NFS ulegnie awarii i uruchomi się ponownie.

nfs-idmap: tłumaczy identyfikatory użytkowników i grup na nazwy, a aby przetłumaczyć nazwy użytkowników i grup
na identyfikatory

ważne pliki konfiguracyjne

będziesz pracował głównie nad poniższymi plikami konfiguracyjnymi, aby skonfigurować serwer i klientów NFS.

/ etc / exports: Jest to główny plik konfiguracyjny, kontroluje, które systemy plików są eksportowane do zdalnych hostów i określa opcje.

/etc / fstab: ten plik służy do kontrolowania, jakie systemy plików, w tym katalogi NFS, są montowane podczas uruchamiania systemu.

/etc/sysconfig / NFS: ten plik służy do kontrolowania portów, na których uruchamiane są wymagane usługi RPC.

/etc / hosts.allow i/etc / hosts.deny: te pliki są nazywane TCP wrappers, kontroluje dostęp do serwera NFS. Jest on używany przez NFS do decydowania, czy przyjąć połączenie przychodzące z innego adresu IP.

środowisko

tutaj użyję CentOS 7 minimal do tego demo. Ten przewodnik powinien również działać na systemach Oracle Linux i Fedora.

serwer NFS

Nazwa hosta: serwer.itzgeek.lokalny (CentOS 7)
adres IP: 192.168.1.10/24

Klient NFS

Nazwa hosta: klient .itzgeek.lokalny (CentOS 7)
adres IP: 192.168.1.20/24

Skonfiguruj serwer NFS

Zainstaluj serwer NFS

zainstaluj poniższy pakiet dla serwera NFS za pomocą polecenia yum.

yum install -y nfs-utils

po zainstalowaniu pakietów włącz i uruchom usługi NFS.

systemctl start nfs-server rpcbindsystemctl enable nfs-server rpcbind

Utwórz NFS Share

teraz stwórzmy katalog do udostępnienia klientowi NFS. Tutaj będę tworzyć nowy katalog o nazwie nfsfileshare w partycji/.

Możesz również udostępnić istniejący katalog w NFS.

mkdir /nfsfileshare

Zezwalaj klientowi NFS na odczyt i zapis do utworzonego katalogu.

chmod 777 /nfsfileshare/

musimy zmodyfikować plik /etc/exports, aby utworzyć wpis katalogu /nfsfileshare, który chcesz udostępnić.

vi /etc/exports

Utwórz NFS Udostępnij coś takiego jak poniżej.

/nfsfileshare 192.168.1.20(rw,sync,no_root_squash)

/nfsfileshare: shared directory

192.168.1.20: Adres IP maszyny klienta. Możemy również użyć nazwy hosta zamiast adresu IP. Możliwe jest również zdefiniowanie zakresu klientów z podsiecią jak 192.168.1.0 / 24.

RW: uprawnienia do zapisu do folderu udostępnionego

synchronizacja: wszystkie zmiany w odpowiednim systemie plików są natychmiast usuwane na dysk; odpowiednie operacje zapisu są czekane.

no_root_squash: domyślnie każde żądanie pliku wykonane przez użytkownika root na komputerze klienckim jest traktowane jako przez użytkownika nikt na serwerze. (DokĹ ’ adnie, do ktĂłrego UID jest odwzorowane ĹźÄ … danie, zaleĹźy od UID uĹźytkownika „nikt” na serwerze, a nie od klienta.) Jeśli wybrano no_root_squash, to root na komputerze klienckim będzie miał taki sam poziom dostępu do plików w systemie jak root na serwerze.

możesz zapoznać się z całą opcją na stronie podręcznika man exports lub tutaj.

Eksportuj udostępnione katalogi za pomocą następującego polecenia.

exportfs -r

Dodatki:

exportfs-v: Wyświetla listę udostępnionych plików i opcji eksportu na serwerze.
exportfs-a: eksportuje wszystkie katalogi wymienione w /etc/exports.
exportfs-u: UnExport jeden lub więcej katalogów.
exportfs – r: ponowne eksportowanie wszystkich katalogów po modyfikacji /etc / exports.

po skonfigurowaniu serwera NFS, musimy zamontować ten współdzielony katalog w kliencie NFS.

Konfiguracja zapory sieciowej

musimy skonfigurować zaporę sieciową na serwerze NFS, aby umożliwić klientowi NFS dostęp do udziału NFS. Aby to zrobić, uruchom następujące polecenia na serwerze NFS.

firewall-cmd --permanent --add-service mountdfirewall-cmd --permanent --add-service rpc-bindfirewall-cmd --permanent --add-service nfsfirewall-cmd --reload

Konfiguracja klienta NFS

Instalacja klienta NFS

aby zamontować zdalny udział NFS, musimy zainstalować pakiety NFS na kliencie NFS. Zainstaluj pakiety NFS używając poniższego polecenia.

yum install -y nfs-utils

Sprawdź udział NFS

przed zamontowaniem udziału NFS proszę o sprawdzenie udziałów NFS dostępnych na serwerze NFS, uruchamiając następujące polecenie na kliencie NFS.

Zamień adres IP na adres IP serwera NFS lub nazwę hosta.
showmount -e 192.168.1.10

:

Export list for 192.168.1.10:/nfsfileshare 192.168.1.20

jak wynika z danych wyjściowych, /nfsfileshare jest dostępny na serwerze NFS (192.168.1.10) dla klienta NFS (192.168.1.20).

Dodatki:

showmount-e : pokazuje dostępne udziały na Twojej maszynie lokalnej (serwer NFS).
showmount-e < server-ip lub hostname>: Wyświetla listę dostępnych udziałów na zdalnym serwerze

Mount NFS Share

teraz utwórz katalog na kliencie NFS, aby zamontować NFS share /nfsfileshare, które utworzyliśmy na serwerze NFS.

mkdir /mnt/nfsfileshare

użyj poniższego polecenia, aby zamontować udział NFS /nfsfileshare z serwera NFS 192.168.1.10 w /mnt/nfsfileshare na kliencie NFS.

mount 192.168.1.10:/nfsfileshare /mnt/nfsfileshare

Sprawdź zamontowany udział w kliencie NFS za pomocą polecenia mount.

mount | grep nfs

:

ssunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)nfsd on /proc/fs/nfsd type nfsd (rw,relatime)192.168.1.10:/nfsfileshare on /mnt/nfsfileshare type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.20,local_lock=none,addr=192.168.1.10)

możesz również użyć polecenia df-hT, aby sprawdzić zamontowany udział NFS.

df -hT

:

Filesystem Type Size Used Avail Use% Mounted on/dev/mapper/centos-root xfs 50G 1.2G 49G 3% /devtmpfs devtmpfs 485M 0 485M 0% /devtmpfs tmpfs 496M 0 496M 0% /dev/shmtmpfs tmpfs 496M 6.7M 490M 2% /runtmpfs tmpfs 496M 0 496M 0% /sys/fs/cgroup/dev/mapper/centos-home xfs 47G 33M 47G 1% /home/dev/sda1 xfs 1014M 154M 861M 16% /boottmpfs tmpfs 100M 0 100M 0% /run/user/0192.168.1.10:/nfsfileshare nfs4 50G 1.2G 49G 3% /mnt/nfsfileshare

Utwórz plik w zamontowanym katalogu, aby zweryfikować dostęp do odczytu i zapisu w NFS share.

touch /mnt/nfsfileshare/test

jeśli powyższe polecenie nie zwróci błędu, masz działającą konfigurację NFS.

automatyczne montowanie akcji NFS

aby automatycznie montować akcje przy każdym ponownym uruchomieniu, musisz zmodyfikować plik /etc/fstab swojego klienta NFS.

vi /etc/fstab

Dodaj wpis tak jak poniżej.

## /etc/fstab# Created by anaconda on Wed Jan 17 12:04:02 2018## Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#/dev/mapper/centos-root / xfs defaults 0 0UUID=60a496d0-69f4-4355-aef0-c31d688dda1b /boot xfs defaults 0 0/dev/mapper/centos-home /home xfs defaults 0 0/dev/mapper/centos-swap swap swap defaults 0 0192.168.1.10:/nfsfileshare /mnt/nfsfileshare nfs nosuid,rw,sync,hard,intr 0 0

Zapisz i zamknij plik.

Uruchom ponownie maszynę kliencką i sprawdź, czy udział jest montowany automatycznie, czy nie.

reboot

Sprawdź zamontowany udział w kliencie NFS za pomocą polecenia mount.

mount | grep nfs

:

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)192.168.1.10:/nfsfileshare on /mnt/nfsfileshare type nfs4 (rw,nosuid,relatime,sync,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.20,local_lock=none,addr=192.168.1.10)

jeśli chcesz odmontować katalog udostępniony z klienta NFS po zakończeniu udostępniania plików, możesz odmontować ten katalog za pomocą polecenia umount.

umount /mnt/nfsfileshare

wniosek

pomyślnie skonfigurowałeś serwer NFS i klienta NFS na CentOS 7 / RHEL 7. Jeśli nie chcesz używać montowań statycznych, możesz skonfigurować AutoFS na CentOS 7, aby montować NFS share tylko wtedy, gdy użytkownik uzyska do nich dostęp.

You might also like

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.