Jak nainstalovat NFS server a klienta na RHEL distribuce
V Linuxu existuje několik protokolů pro sdílení souborů používaných ke sdílení úložiště a souborů v síti. Nejpoužívanějšími jsou Samba a NFS.
Samba je populární sada aplikací s otevřeným zdrojovým kódem, která funguje na architektuře klient-server. Nabízí kompatibilitu napříč platformami umožňující bezproblémové sdílení souborů napříč operačními systémy Linux, Windows a macOS. Ke sdílené složce hostované v systému Linux lze přistupovat z různých platforem, což podporuje spolupráci.
Dalším široce používaným protokolem pro sdílení souborů je NFS, zkratka pro Network File Share. Stejně jako Samba funguje na modelu klient-server a umožňuje uživateli sdílet adresáře a soubory v síti s více vzdálenými klientskými uživateli.
V této příručce se podíváme na to, jak nainstalovat server a klienta NFS v distribucích založených na RHEL, jako jsou Fedora, CentOS Stream, Rocky Linux a AlmaLinux.
Služby NFS
V současné době existují 3 verze NFS, nejnovější je NFSv4, která zahrnuje funkce, jako je schopnost pracovat přes internet a přes firewall. Kromě toho existuje NFSv3 a NFSv2, což je nejstarší protokol.
Služba NFS se skládá ze Serveru NFS a klienta. Server NFS obsahuje následující soubory klíčů:
- nfs-server – Umožňuje klientským systémům přístup k souborům sdíleným NFS.
- rpcbind – převádí programy RPC na univerzální adresy.
- nfs-idmap – Provádí překlad ID uživatelů a skupin na jména a jména uživatelů a skupin na ID.
- portmap – Toto je server, který převádí čísla programů RPC na čísla portů IP.
- nfslock – V případě selhání serveru NFS spustí nfslock požadované procesy RPC.
Konfigurační služby NFS
Zde jsou některé z klíčových konfiguračních souborů pro NFS:
- /etc/exports – Hlavní konfigurační soubor, který určuje souborové systémy nebo adresáře, které mají být exportovány a ke kterým mají vzdálení uživatelé přistupovat.
- /etc/fstab – Toto je soubor, který obsahuje položky připojených diskových oddílů. V NFS soubor obsahuje položky sdílených adresářů NFS nebo souborových systémů, které jsou trvale připojeny a mohou přetrvávat po restartu.
- /etc/sysconfig/nfs – Definuje porty potřebné pro běh služeb RPC.
Nastavení serveru a klienta NFS
K nastavení sdílení NFS budeme potřebovat alespoň dva počítače Linux/Unix. Zde v tomto tutoriálu budu používat dva servery.
- Server NFS – RHEL 9 s IP 10.128.15.213
- Klient NFS – RHEL 9 s IP 10.128.15.214
Nainstalujte NFS na server a klienta
Chcete-li začít, musíte se přihlásit do obou uzlů (NFS server a klient) a nainstalovat služby NFS. Nejprve aktualizujte informace o balíčku podle obrázku. Následující příkaz dnf také upgraduje všechny vzrušující balíčky na jejich nejnovější verze.
sudo dnf update
Po dokončení aktualizace pokračujte a nainstalujte požadované služby NFS.
sudo dnf install rpcbind nfs-utils -y
Dalším krokem je povolení služeb NFS, jak je znázorněno.
sudo systemctl enable nfs-server
sudo systemctl enable rpcbind
Nezapomeňte také spustit služby NFS.
sudo systemctl enable nfs-server
sudo systemctl enable rpcbind
Je důležité ověřit, zda jsou spuštěny všechny služby NFS.
sudo systemctl status nfs-server
sudo systemctl status rpcbind
Nezapomeňte také nakonfigurovat bránu firewall, aby bylo možné povolit příchozí služby NFS následujícím způsobem.
sudo firewall-cmd --permanent --add-service={nfs,rpc-bind,mountd}
sudo firewall-cmd --reload
Vytvořte sdílený adresář NFS
Když jsou všechny služby NFS nainstalovány a spuštěny podle očekávání, je čas vytvořit sdílený adresář NFS, což je adresář, který bude obsahovat soubory, ke kterým budou přistupovat klienti NFS v síti.
V tomto případě vytvoříme sdílený adresář NFS s názvem my_nfsshare v našem domovském adresáři.
mkdir -p /home/tecmint/my_nfsshare
Dále přidělte oprávnění k adresáři. Pro demonstrační účely přidělíme globální oprávnění, která budou klientům NFS udělovat oprávnění ke čtení, zápisu a spouštění.
sudo chmod 777 -R /home/tecmint/my_nfsshare
Exportujte sdílený adresář NFS
Dalším krokem je export sdíleného adresáře NFS. Abychom toho dosáhli, musíme provést záznam v souboru /etc/exports. Proto k souboru přistupujte pomocí preferovaného textového editoru. V tomto případě použijeme editor Vim.
sudo vim /etc/exports
Přidejte následující položku. Nezapomeňte nahradit server-ip adresou IP vašeho serveru NFS.
/home/tecmint/my_nfsshare server-ip/24(rw,no_root_squash)
Nakonec exportujte sdílený adresář NFS nebo souborový systém.
sudo exportfs -rv
Spuštěním následujícího příkazu zobrazíte sdílené složky NFS.
showmount -e localhost
Nakonfigurujte klienta NFS
Zbývající fází tohoto cvičení je konfigurace klienta NFS pro přístup ke sdílenému adresáři. Nejprve se ujistěte, že můžete zobrazit seznam exportů nebo sdílené složky NFS na serveru NFS.
showmount -e 10.128.15.213
Dalším krokem je připojení sdílené složky NFS ze serveru ke klientovi. Abychom to mohli udělat, musíme nejprve vytvořit mount adresář. V tomto případě vytvoříme adresář s názvem nfs_backup.
mkdir nfs_backup
Poté připojíme sdílenou složku NFS do připojovacího adresáře, který jsme právě vytvořili v kořenovém domovském adresáři
mount -t nfs 10.128.15.213:/home/tecmint/my_nfsshare ~/nfs_backup
Chcete-li zachovat sdílení NFS, upravte soubor /etc/fstab.
vim /etc/fstab
Poté přidejte následující položku.
10.128.15.213:/home/tecmint/my_nfsshare /root/nfs_backup nfs defaults 0 0
Uložte a ukončete konfigurační soubor.
Testování nastavení NFS
Posledním krokem je ověření, zda nastavení NFS funguje podle očekávání. Vytvoříme několik souborů na serveru a ověříme jejich dostupnost na straně klienta NFS.
Na straně serveru vytvoříme soubory ve sdíleném adresáři NFS.
sudo touch my_nfsshare/file{1..4}.txt
Abychom ověřili, že soubory byly vytvořeny, provedeme příkaz ls:
ls -l my_nfsshare/
Zpět na stranu klienta ověřte, zda jsou soubory dostupné v připojovacím adresáři bez jakékoli aktualizace služby nebo restartování jakýchkoli služeb, jak je vidět v následujícím výstupu.
ls -l nfs_backup/
Odebírání NFS Mount
Pokud již připojený adresář v systému nepotřebujete, můžete jej odpojit ze strany klienta pomocí následujícího příkazu umount:
umount ~/nfs_backup
Příkazy sdílení NFS
Některé další důležité příkazy pro NFS.
- showmount -e – Zobrazí dostupné sdílené položky na vašem místním počítači
- showmount -e ip-address – uvádí seznam dostupných sdílených položek na vzdáleném serveru
- showmount -d – Zobrazí seznam všech podadresářů
- exportfs -v – Zobrazí seznam sdílených souborů a možností na serveru
- exportfs -a – Exportuje všechna sdílení uvedená v /etc/exports nebo křestní jméno
- exportfs -u – Zruší export všech sdílených položek uvedených v /etc/exports nebo křestního jména
- exportfs -r – Po úpravě /etc/exports obnoví seznam serveru
Závěr
Toto uzavírá náš průvodce, jak nainstalovat NFS server a klienta v distribucích založených na RedHat. Nainstalovali jsme služby NFS na server, vytvořili sdílený adresář NFS a nakonec připojili sdílený adresář na klienta. Nakonec jsme ověřili nastavení NFS přístupem k souboru vytvořenému na serveru ze strany klienta.