NFS înseamnă Network File System, vă ajută să partajați fișiere și foldere între sistemele Linux / Unix, dezvoltate de SUN Microsystems în 1990. NFS vă permite să montați o partajare la distanță la nivel local.
acest ghid vă ajută să configurați serverul NFS pe CentOS 7 / RHEL 7.
- beneficiile NFS
- servicii importante
- fișiere de configurare importante
- Mediu
- Server NFS
- NFS Client
- Configurați serverul NFS
- instalați serverul NFS
- creare partajare NFS
- configurează Firewall-ul
- configurați clientul NFS
- instalați clientul NFS
- verificați partajarea NFS
- Mount NFS Share
- automount NFS Shares
- concluzie
beneficiile NFS
- File / Folder sharing între *nix systems
- permite montarea sistemelor de fișiere la distanță la nivel local
- poate fi acționat ca sistem de stocare centralizat
- acesta poate fi folosit ca un domeniu de stocare ( Datastore) pentru VMware și alte platforme de virtualizare.
- permite aplicațiilor să partajeze fișiere de configurare și date cu mai multe noduri.
- permite actualizarea fișierelor în cadrul partajării.
servicii importante
următoarele sunt serviciile NFS importante, incluse în pachetele NFS-utils.
rpcbind: serverul rpcbind convertește numerele de program RPC în adrese universale.
NFS-server: permite clienților să acceseze acțiuni NFS.
NFS-lock / rpc-statd: NFS fișier de blocare. Implementați recuperarea blocării fișierelor atunci când un server NFS se blochează și repornește.
NFS-idmap: se traduce ID-uri de utilizator și de grup în nume, și pentru a traduce nume de utilizator și de grup
în ID-uri
fișiere de configurare importante
v-ar fi de lucru în principal pe fișierele de configurare de mai jos pentru a seta server NFS și clienți.
/ etc / exporturi: Este fișierul principal de configurare, controlează ce sisteme de fișiere sunt exportate către gazde la distanță și specifică opțiunile.
/etc/fstab: acest fișier este utilizat pentru a controla ce sisteme de fișiere, inclusiv directoare NFS sunt montate atunci când sistemul pornește.
/etc/sysconfig/nfs: acest fișier este utilizat pentru a controla porturile pe care rulează serviciile RPC necesare.
/etc/gazde.permiteți și/etc / gazde.deny: aceste fișiere sunt numite ambalaje TCP, controlează accesul la serverul NFS. Este folosit de NFS pentru a decide dacă acceptă sau nu o conexiune care vine de la o altă adresă IP.
Mediu
aici, voi folosi CentOS 7 minim pentru acest demo. Acest ghid ar trebui să funcționeze și pe sistemele Oracle Linux și Fedora.
Server NFS
Nume gazdă: server.itzgeek.adresa IP locală (CentOS 7)
: 192.168.1.10/24
NFS Client
Nume gazdă: client.itzgeek.adresa IP locală (CentOS 7)
: 192.168.1.20/24
Configurați serverul NFS
instalați serverul NFS
instalați pachetul de mai jos pentru serverul NFS utilizând comanda yum.
yum install -y nfs-utils
odată ce pachetele sunt instalate, activați și porniți serviciile NFS.
systemctl start nfs-server rpcbindsystemctl enable nfs-server rpcbind
creare partajare NFS
acum, să creăm un director de partajat cu clientul NFS. Aici voi crea un nou director numit nfsfileshare în partiția/.
de asemenea, puteți partaja directorul existent cu NFS.
mkdir /nfsfileshare
permiteți clientului NFS să citească și să scrie în directorul creat.
chmod 777 /nfsfileshare/
trebuie să modificăm fișierul /etc/exports pentru a face o intrare a directorului /nfsfileshare pe care doriți să o partajați.
vi /etc/exports
creați o partajare NFS ceva de genul de mai jos.
/nfsfileshare 192.168.1.20(rw,sync,no_root_squash)
/nfsfileshare: director partajat
192.168.1.20: Adresa IP a mașinii client. De asemenea, putem folosi numele gazdei în locul unei adrese IP. De asemenea, este posibil să se definească gama de clienți cu subrețea ca 192.168.1.0/24.
rw: permisiunea de scriere a folderului partajat
sincronizare: toate modificările aduse sistemului de fișiere conform sunt imediat spălate pe disc; operațiile de scriere respective sunt așteptate.
no_root_squash: în mod implicit, orice solicitare de fișier făcută de root-ul utilizatorului pe mașina client este tratată ca de nimeni utilizator de pe server. (Exact la ce UID este mapată cererea depinde de UID-ul utilizatorului „nimeni” de pe server, nu de client.) Dacă este selectat no_root_squash, atunci root pe mașina client va avea același nivel de acces la fișierele din sistem ca root pe server.
puteți cunoaște toate opțiunile din pagina Man exports man sau aici.
exportați directoarele partajate folosind următoarea comandă.
exportfs -r
Extras:
exportfs-v: afișează o listă de fișiere de acțiuni și opțiuni de export pe un server.
exportfs – a: exportă toate directoarele listate în/etc / exports.
exportfs-u: UnExport unul sau mai multe directoare.
exportfs-r: ReExport toate directoarele după modificarea /etc/exports.
după configurarea serverului NFS, trebuie să montăm acel director partajat în clientul NFS.
configurează Firewall-ul
trebuie să configurăm firewall-ul pe serverul NFS pentru a permite clientului NFS să acceseze partajarea NFS. Pentru a face acest lucru, executați următoarele comenzi pe serverul NFS.
firewall-cmd --permanent --add-service mountdfirewall-cmd --permanent --add-service rpc-bindfirewall-cmd --permanent --add-service nfsfirewall-cmd --reload
configurați clientul NFS
instalați clientul NFS
trebuie să instalăm pachete NFS pe clientul NFS pentru a monta o partajare NFS la distanță. Instalați pachetele NFS folosind comanda de mai jos.
yum install -y nfs-utils
verificați partajarea NFS
înainte de a monta partajarea NFS, vă solicit să verificați partajările NFS disponibile pe serverul NFS executând următoarea comandă pe clientul NFS.
showmount -e 192.168.1.10
ieșire:
Export list for 192.168.1.10:/nfsfileshare 192.168.1.20
conform ieșirii, / nfsfileshare este disponibil pe serverul NFS (192.168.1.10) pentru clientul NFS (192.168.1.20).
Extras:
showmount-e : afișează acțiunile disponibile pe mașina dvs. locală (serverul NFS).
showmount-e < server-ip sau hostname>: listează acțiunile disponibile pe serverul de la distanță
acum, creați un director pe NFS client pentru a monta NFS share /nfsfileshare pe care le-am creat în serverul NFS.
mkdir /mnt/nfsfileshare
utilizați comanda de mai jos pentru a monta o partajare NFS /nfsfileshare de pe serverul NFS 192.168.1.10 în /mnt/nfsfileshare pe clientul NFS.
mount 192.168.1.10:/nfsfileshare /mnt/nfsfileshare
verificați partajarea montată pe clientul NFS utilizând comanda mount.
mount | grep nfs
ieșire:
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)
de asemenea, puteți utiliza comanda df-hT pentru a verifica cota NFS montată.
df -hT
ieșire:
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
creați un fișier în directorul montat pentru a verifica accesul la citire și scriere pe partajarea NFS.
touch /mnt/nfsfileshare/test
dacă comanda de mai sus returnează nici o eroare, aveți de lucru NFS setup.
pentru a monta acțiunile automat la fiecare repornire, va trebui să modificați fișierul /etc/fstab al clientului dvs.
vi /etc/fstab
adăugați o intrare ceva de genul de mai jos.
## /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
Salvați și închideți fișierul.
reporniți mașina client și verificați dacă partajarea este montată automat sau nu.
reboot
verificați partajarea montată pe clientul NFS utilizând comanda mount.
mount | grep nfs
ieșire:
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)
dacă doriți să demontați directorul partajat din clientul NFS după ce ați terminat cu partajarea de fișiere, puteți demonta acel director special folosind comanda umount.
umount /mnt/nfsfileshare
concluzie
ați configurat cu succes serverul NFS și clientul NFS pe CentOS 7 / RHEL 7. Dacă doriți să nu utilizați suporturi statice, puteți configura AutoFS pe CentOS 7 pentru a monta partajarea NFS numai atunci când un utilizator le accesează.