Vyhledávání na webu

Jak nastavit server a klienta NFS na CentOS 8


Network File System (NFS), také známý jako souborový systém klient/server, je populární, multiplatformní a distribuovaný protokol souborového systému používaný k exportu lokálních souborových systémů přes síť, takže že klienti mohou sdílet adresáře a soubory s ostatními v síti a pracovat s nimi, jako by byly připojeny lokálně.

V CentOS/RHEL 8 jsou podporované verze NFS NFSv3 a NFSv4 a výchozí verze NFS je 4.2 s podporou seznamů řízení přístupu ( ACL), kopírování na straně serveru, řídké soubory, rezervace místa, označené NFS, vylepšení rozvržení a mnoho dalšího.

V tomto článku se dozvíte, jak nainstalovat a nakonfigurovat Server NFS a klient NFS v distribucích Linuxu CentOS/RHEL 8.

Předpoklady:

  1. Průvodce instalací CentOS 8
  2. RHEL 8 Minimální instalace
  3. Povolte předplatné RHEL v RHEL 8
  4. Nastavte statickou IP adresu v CentOS/RHEL 8

Naše testovací prostředí:

NFS Server IP:	10.20.20.8
NFS Client IP:	10.20.20.9	

Nastavení serveru NFS na CentOS 8

1. Nejprve začněte instalací požadovaných balíčků na server NFS. Balíčky jsou nfs-utils, které poskytují démona pro jaderný NFS server a související nástroje, jako je program showmount.

Spusťte následující příkaz a nainstalujte balíček na NFS server (použijte sudo, pokud spravujete systém jako uživatel bez oprávnění root).

dnf install nfs-utils

2. Po dokončení instalace spusťte službu nfs-server, povolte její automatické spouštění při spouštění systému a poté ověřte její stav pomocí příkazů systemctl.

systemctl start nfs-server.service
systemctl enable nfs-server.service
systemctl status nfs-server.service

Všimněte si, že další služby, které jsou nutné pro provoz serveru NFS nebo připojení sdílených složek NFS, jako jsou nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad a rpc.idmapd se automaticky spustí.

Konfigurační soubory pro server NFS jsou:

  • /etc/nfs.conf – hlavní konfigurační soubor pro démony a nástroje NFS.
  • /etc/nfsmount.conf – konfigurační soubor pro připojení NFS.

3. Dále vytvořte systémy souborů, které chcete exportovat nebo sdílet na serveru NFS. Pro tuto příručku vytvoříme čtyři systémy souborů, z nichž tři používají zaměstnanci tří oddělení: lidské zdroje, finance a marketing ke sdílení souborů a jeden je určen pro zálohování uživatelů root.

mkdir -p  /mnt/nfs_shares/{Human_Resource,Finance,Marketing}
mkdir  -p /mnt/backups
ls -l /mnt/nfs_shares/

4. Poté exportujte výše uvedené systémy souborů do konfiguračního souboru serveru NFS /etc/exports, abyste určili místní fyzické systémy souborů, které jsou přístupné klientům NFS.

/mnt/nfs_shares/Human_Resource  	10.20.20.0/24(rw,sync)
/mnt/nfs_shares/Finance			10.20.10.0/24(rw,sync)
/mnt/nfs_shares/Marketing		10.20.30.0/24(rw,sync)
/mnt/backups				10.20.20.9/24(rw,sync,no_all_squash,root_squash)

Zde jsou některé z možností exportu (další informace a možnosti exportu naleznete v části man exporty):

  • rw – umožňuje přístup ke čtení i zápisu do systému souborů.
  • synchronizace – říká serveru NFS, aby na požádání zapsal operace (zápis informací na disk) (platí ve výchozím nastavení).
  • all_squash – mapuje všechna UID a GID z požadavků klientů na anonymního uživatele.
  • no_all_squash – používá se k mapování všech UID a GID z požadavků klientů na identická UID a GID na serveru NFS.
  • root_squash – mapuje požadavky od uživatele root nebo UID/GID 0 od klienta na anonymní UID/GID.

5. Chcete-li exportovat výše uvedený systém souborů, spusťte příkaz exportfs s příznakem -a znamená exportovat nebo zrušit export všech adresářů, - r znamená reexport všech adresářů, synchronizaci /var/lib/nfs/etab s /etc/exports a soubory pod /etc/exports.d a -v umožňují podrobný výstup.

exportfs -arv

6. Chcete-li zobrazit aktuální seznam exportů, spusťte následující příkaz. Všimněte si, že tabulka exporty také používá některé z výchozích možností exportů, které nejsou explicitně definovány, jak je znázorněno na následujícím snímku obrazovky.

exportfs  -s

7. Dále, pokud máte spuštěnou službu firewalld, musíte povolit provoz pro potřebné služby NFS (mountd, nfs , rpc-bind) přes bránu firewall a poté znovu načtěte pravidla brány firewall, aby se změny uplatnily následovně.

firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --reload

Nastavení klienta NFS na klientských systémech

8. Nyní do klientských uzlů nainstalujte potřebné balíčky pro přístup ke sdíleným položkám NFS na klientských systémech. Spusťte příslušný příkaz pro vaši distribuci:

dnf install nfs-utils nfs4-acl-tools         [On CentOS/RHEL]
sudo apt install nfs-common nfs4-acl-tools   [On Debian/Ubuntu]

9. Poté spusťte příkaz showmount pro zobrazení informací o připojení pro server NFS. Příkaz by měl exportovat systém souborů na klienta, jak je znázorněno na snímku obrazovky.

showmount -e 10.20.20.8

9. Dále vytvořte místní souborový systém/adresář pro připojení vzdáleného souborového systému NFS a připojte jej jako souborový systém ntf.

mkdir -p /mnt/backups
mount -t nfs  10.20.20.8:/mnt/backups /mnt/backups

10. Poté potvrďte, že vzdálený souborový systém byl připojen spuštěním příkazu mount a filtrem připojení nfs.

mount | grep nfs

11. Chcete-li povolit trvalé připojení i po restartu systému, spusťte následující příkaz a zadejte příslušnou položku do /etc/fstab.

echo "10.20.20.8:/mnt/backups     /mnt/backups  nfs     defaults 0 0">>/etc/fstab
cat /etc/fstab

12. Nakonec otestujte, zda nastavení NFS funguje správně, vytvořením souboru na serveru a zkontrolujte, zda je soubor vidět v klientovi.

touch /mnt/backups/file_created_on_server.text     [On NFS Server]
ls -l /mnt/backups/file_created_on_server.text     [On NFS client]

Pak to udělejte obráceně.

touch /mnt/backups/file_created_on_client.text     [On NFS Client]
ls -l /mnt/backups/file_created_on_client.text     [On NFS Server]

13. Odpojení vzdáleného systému souborů na straně klienta.

umount /mnt/backups

Pamatujte, že nemůžete odpojit vzdálený souborový systém, pokud v něm pracujete, jak je znázorněno na následujícím snímku obrazovky.

A je to! V této příručce jsme si ukázali, jak nainstalovat a nakonfigurovat NFS server a klienta v CentOS/RHEL 8. Pokud máte nějaké nápady, které byste chtěli sdílet nebo dotazy, použijte formulář pro komentáře níže, abyste se k nám vrátili.