Wéi Setup NFS (Network File System) op RHEL/CentOS/Fedora an Debian/Ubuntu


NFS (Network File System) ass grondsätzlech entwéckelt fir Dateien an Ordner tëscht Linux/Unix Systemer ze deelen vun Sun Microsystems am Joer 1980. Et erlaabt Iech Är lokal Dateiesystemer iwwer e Netzwierk ze montéieren an Remote Hosten fir mat hinnen ze interagéieren wéi se lokal montéiert sinn. am selwechte System. Mat der Hëllef vun NFS kënne mir Datei Sharing tëscht Unix zu Linux System a Linux zu Unix System opsetzen.

  1. NFS erlaabt lokalen Zougang zu Ferndateien.
  2. Et benotzt Standard Client/Server Architektur fir Dateien ze deelen tëscht all *nix baséiert Maschinnen.
  3. Mat NFS ass et net néideg datt béid Maschinnen um selwechten OS lafen.
  4. Mat Hëllef vun NFS kënne mir zentraliséiert Späicherléisungen konfiguréieren.
  5. D'Benotzer kréien hir Donnéeën onofhängeg vun der kierperlecher Plaz.
  6. Keng manuell Erfrëschung brauch fir nei Dateien.
  7. Nei Versioun vun NFS ënnerstëtzt och acl, Pseudo Root Mounts.
  8. Kann mat Firewalls a Kerberos geséchert ginn.

Et ass e System V-lancéierten Service. Den NFS Server Package enthält dräi Ariichtungen, abegraff am Portmap an nfs-utils Packagen.

  1. Portmap: Et mapt Uriff vun anere Maschinnen op de richtege RPC Service (net erfuerderlech mat NFSv4).
  2. nfs: Et iwwersetzt Remote-Dateideele-Ufroen an Ufroen um lokalen Dateiesystem.
  3. rpc.mountd: Dëse Service ass verantwortlech fir d'Montage an d'Demontage vun Dateiesystemer.

  1. /etc/exports : Et ass eng Haaptkonfiguratiounsdatei vun NFS, all exportéiert Dateien an Verzeichnisser sinn an dësem Fichier um NFS Server Enn definéiert.
  2. /etc/fstab : Fir en NFS-Verzeichnis op Ärem System iwwer d'Neistarten ze montéieren, musse mir en Entrée an /etc/fstab maachen.
  3. /etc/sysconfig/nfs : Konfiguratiounsdatei vun NFS fir ze kontrolléieren op wéi engem Port rpc an aner Servicer nolauschteren.

Setup a konfiguréieren NFS Mounts op Linux Server

Fir NFS Mounts opzestellen, brauche mir op d'mannst zwee Linux/Unix Maschinnen. Hei an dësem Tutorial wäert ech zwee Server benotzen.

  1. NFS Server: nfsserver.example.com mat IP-192.168.0.100
  2. NFS Client: nfsclient.example.com mat IP-192.168.0.101

Mir mussen NFS Packagen op eisem NFS Server installéieren wéi och op NFS Client Maschinn. Mir kënnen et iwwer yum (Red Hat Linux) an apt-get (Debian an Ubuntu) Package Installateuren installéieren.

 yum install nfs-utils nfs-utils-lib
 yum install portmap (not required with NFSv4)
 apt-get install nfs-utils nfs-utils-lib

Start elo d'Servicer op béide Maschinnen.

 /etc/init.d/portmap start
 /etc/init.d/nfs start
 chkconfig --level 35 portmap on
 chkconfig --level 35 nfs on

Nodeems Dir Packagen installéiert hutt an d'Servicer op béide Maschinnen starten, musse mir béid Maschinnen konfiguréieren fir Dateien ze deelen.

Den NFS Server opsetzen

Als éischt wäerte mir den NFS Server konfiguréieren.

Fir e Verzeechnes mat NFS ze deelen, musse mir eng Entrée an /etc/exports Konfiguratiounsdatei maachen. Hei wäert ech en neie Verzeechnes mam Numm nfsshare an/Partition erstellen fir mam Client Server ze deelen, Dir kënnt och e schonn existente Verzeechnes mat NFS deelen.

 mkdir /nfsshare

Elo musse mir en Entrée an /etc/exports maachen an d'Servicer nei starten fir eise Verzeechnes deelbar am Netz ze maachen.

 vi /etc/exports

/nfsshare 192.168.0.101(rw,sync,no_root_squash)

Am uewe genannte Beispill gëtt et e Verzeechnes an/Partition mam Numm nfsshare gëtt mam Client IP gedeelt 192.168.0.101 mat Liesen a Schreift (rw) Privileg, Dir kënnt och den Hostnumm vum Client an der Plaz vum IP benotzen an uewen Beispill.

E puer aner Optiounen déi mir an der /etc/exports Datei benotze fir Dateien ze deelen ass wéi follegt.

  1. ro: Mat der Hëllef vun dëser Optioun kënne mir nëmmen liesen Zougang zu de gedeelt Dateien ubidden, dat heescht de Client kann nëmme liesen.
  2. rw: Dës Optioun erlaabt dem Client Server souwuel Lies- a Schreifzougang am gemeinsame Verzeechnes.
  3. Synchronisatioun: Synchroniséiert bestätegt Ufroe fir de gemeinsame Verzeechnes nëmmen eemol d'Ännerunge festgeluecht goufen.
  4. no_subtree_check: Dës Optioun verhënnert datt d'Subtree Check. Wann e gemeinsame Verzeechnes den Ënnerverzeechnes vun engem gréisseren Dateiesystem ass, mécht nfs Scans vun all Verzeechnes uewendriwwer, fir seng Permissiounen an Detailer z'iwwerpréiwen. D'Subtree Check auszeschalten kann d'Zouverlässegkeet vun NFS erhéijen, awer d'Sécherheet reduzéieren.
  5. no_root_squash: Dës Phrase erlaabt d'Root un den designéierte Verzeichnis ze verbannen.

Fir méi Optiounen mat /etc/exports, sidd Dir recommandéiert d'Man Säiten fir Export ze liesen.

Den NFS Client opsetzen

Nodeems Dir den NFS Server konfiguréiert hutt, musse mir dee gemeinsame Verzeechnes oder Partition am Client Server montéieren.

Elo um NFS Client Enn, musse mir dëse Verzeechnes an eisem Server montéieren fir lokal Zougang ze kréien. Fir dat ze maachen, musse mir als éischt erausfannen datt Aktien um Remote Server oder NFS Server verfügbar sinn.

 showmount -e 192.168.0.100

Export list for 192.168.0.100:
/nfsshare 192.168.0.101

Uewe genannte Kommando weist datt e Verzeechnes mam Numm nfsshare op 192.168.0.100 verfügbar ass fir mat Ärem Server ze deelen.

Fir dee gemeinsame NFS Verzeichnis ze montéieren kënne mir de folgende Mount Kommando benotzen.

 mount -t nfs 192.168.0.100:/nfsshare /mnt/nfsshare

Deen uewe genannte Kommando montéiert dee gemeinsame Verzeechnes an /mnt/nfsshare um Client Server. Dir kënnt et nom Kommando verifizéieren.

 mount | grep nfs

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
192.168.0.100:/nfsshare on /mnt type nfs (rw,addr=192.168.0.100)

Deen uewe mount Kommando huet den nfs gedeelt Verzeechnes op nfs Client temporär montéiert, fir en NFS Verzeichnis permanent op Ärem System iwwer d'Reboots ze montéieren, musse mir en Entrée an /etc/fstab maachen.

 vi /etc/fstab

Füügt déi folgend nei Zeil wéi hei ënnendrënner.

192.168.0.100:/nfsshare /mnt  nfs defaults 0 0

Test d'Aarbecht vum NFS Setup

Mir kënnen eisen NFS Server Setup testen andeems Dir eng Testdatei um Server Enn erstellt a seng Disponibilitéit op nfs Client Säit iwwerpréift oder vice-versa.

Ech hunn eng nei Textdatei mam Numm nfstest.txt an deem gemeinsame Verzeechnes erstallt.

 cat > /nfsshare/nfstest.txt

This is a test file to test the working of NFS server setup.

Gitt an dee gemeinsame Verzeechnes am Client Server an Dir fannt déi gedeelt Datei ouni manuell Erfrëschung oder Service Neistart.

 ll /mnt/nfsshare
total 4
-rw-r--r-- 1 root root 61 Sep 21 21:44 nfstest.txt
[email  ~]# cat /mnt/nfsshare/nfstest.txt
This is a test file to test the working of NFS server setup.

Ewechzehuelen der NFS Mount

Wann Dir dee gemeinsame Verzeechnes vun Ärem Server demontéiere wëllt nodeems Dir fäerdeg sidd mat der Datei Sharing, kënnt Dir dee bestëmmte Verzeichnis einfach mam Kommando \umount ofmontéieren.Kuckt dëst Beispill hei ënnen.

[email  ~]# umount /mnt/nfsshare

Dir kënnt gesinn datt d'Montage geläscht goufen andeems Dir de Dateiesystem erëm kuckt.

 df -h -F nfs

Dir gesitt datt dës gedeelt Verzeichnisser net méi verfügbar sinn.

E puer méi wichteg Kommandoen fir NFS.

  1. showmount -e : Weist déi verfügbar Aktien op Ärer lokaler Maschinn
  2. showmount -e : Lëscht déi verfügbar Shares um Fernserver
  3. showmount -d : Lëscht all Ënnerverzeechnes
  4. exportfs -v : Weist eng Lëscht vun Aktiendateien an Optiounen op engem Server
  5. exportfs -a : Exportéiert all Aktien, déi an /etc/exports opgezielt sinn, oder Virnumm
  6. exportfs -u : Unexportéiert all Aktien, déi an /etc/exports opgezielt sinn, oder Virnumm
  7. exportfs -r : D'Lëscht vum Server erfrëschen nodeems Dir /etc/exports geännert hutt

Dëst ass et mat NFS Mounts fir elo, dëst war just e Start, ech kommen mat méi Optiounen a Features vun NFS an eisen zukünftegen Artikelen. Bis dohin, Bleift verbonne mat linux-console.net fir méi spannend an interessant Tutorials an Zukunft. Loosst Är Kommentaren a Virschléi ënnen am Kommentarfeld.