Configuració de sistemes de fitxers Linux estàndard i configuració del servidor NFSv4 - Part 2


Un enginyer certificat de la Fundació Linux (LFCE) està format per configurar, configurar, gestionar i resoldre problemes de serveis de xarxa en sistemes Linux, i és responsable del disseny i la implementació de l'arquitectura del sistema i la resolució de problemes quotidians relacionats.

Presentació del programa de certificació de la Fundació Linux (LFCE).

A la part 1 d'aquesta sèrie vam explicar com instal·lar un servidor NFS (Network File System) i configurar el servei perquè s'iniciï automàticament a l'arrencada. Si encara no ho heu fet, consulteu aquest article i seguiu els passos indicats abans de continuar.

  1. Instal·lació de serveis de xarxa i configuració de l'inici automàtic a l'arrencada - Part 1

Ara us mostraré com configurar correctament el vostre servidor NFSv4 (sense seguretat d'autenticació) perquè pugueu configurar recursos compartits de xarxa per utilitzar-los als clients Linux com si aquests sistemes de fitxers estiguessin instal·lats localment. Tingueu en compte que podeu utilitzar LDAP o NIS amb finalitats d'autenticació, però ambdues opcions estan fora de l'abast de la certificació LFCE.

Configuració d'un servidor NFSv4

Un cop el servidor NFS estigui en funcionament, centrarem la nostra atenció en:

  1. especificar i configurar els directoris locals que volem compartir a la xarxa i
  2. muntant automàticament aquests recursos compartits de xarxa als clients, ja sigui mitjançant el fitxer /etc/fstab o la utilitat de muntatge automàtic basat en el nucli (autofs).

Més endavant explicarem quan triar un mètode o un altre.

Abans de ser-ho, ens hem d'assegurar que el dimoni idmapd s'està executant i configurat. Aquest servei realitza l'assignació de noms NFSv4 ([email ) amb els ID d'usuari i de grup, i és necessari per implementar un servidor NFSv4.

Editeu /etc/default/nfs-common per habilitar idmapd.

NEED_IDMAPD=YES

I editeu /etc/idmapd.conf amb el vostre nom de domini local (el valor predeterminat és el FQDN de l'amfitrió).

Domain = yourdomain.com

A continuació, inicieu idmapd.

# service nfs-common start 	[sysvinit / upstart based systems]
# systemctl start nfs-common 	[systemd based systems]

El fitxer /etc/exports conté les directrius de configuració principals per al nostre servidor NFS, defineix els sistemes de fitxers que s'exportaran als amfitrions remots i especifica les opcions disponibles. En aquest fitxer, cada xarxa compartida s'indica mitjançant una línia independent, que té l'estructura següent per defecte:

/filesystem/to/export client1([options]) clientN([options])

On /filesystem/to/export és el camí absolut al sistema de fitxers exportat, mentre que client1 (fins a clientN) representa el client específic (nom d'amfitrió o adreça IP) o xarxa. (es permeten els comodins) al qual s'exporta la part compartida. Finalment, les opcions és una llista de valors separats per comes (opcions) que es tenen en compte en exportar la quota, respectivament. Tingueu en compte que no hi ha espais entre cada nom d'amfitrió i els parèntesis que precedeixen.

Aquí teniu una llista de les opcions més freqüents i la seva descripció respectiva:

  1. ro (abreviatura de només lectura): els clients remots poden muntar els sistemes de fitxers exportats només amb permisos de lectura.
  2. rw (abreviatura de lectura-escriptura): permet als amfitrions remots fer canvis d'escriptura als sistemes de fitxers exportats.
  3. wdelay (abreviatura de retard d'escriptura): el servidor NFS retarda la commissió de canvis al disc si sospita que una altra sol·licitud d'escriptura relacionada és imminent. Tanmateix, si el servidor NFS rep diverses sol·licituds petites no relacionades, aquesta opció reduirà el rendiment, de manera que l'opció no_wdelay es pot utilitzar per desactivar-la.
  4. sincronització: el servidor NFS només respon a les sol·licituds després que els canvis s'hagin compromès a l'emmagatzematge permanent (és a dir, el disc dur). El contrari, l'opció async, pot augmentar el rendiment, però a costa de la pèrdua o la corrupció de dades després d'un reinici del servidor impur.
  5. root_squash: evita que els usuaris root remots tinguin privilegis de superusuari al servidor i els assigna l'ID d'usuari per a ningú. Si voleu \esquaix tots els usuaris (i no només root), podeu utilitzar l'opció all_squash.
  6. anonuid/anongid: estableix explícitament l'UID i el GID del compte anònim (ningú).
  7. subtree_check: si només s'exporta un subdirectori d'un sistema de fitxers, aquesta opció verifica que un fitxer sol·licitat es troba en aquest subdirectori exportat. D'altra banda, si s'exporta tot el sistema de fitxers, desactivar aquesta opció amb no_subtree_check accelerarà les transferències. L'opció predeterminada avui dia és no_subtree_check, ja que la comprovació de subarbre tendeix a causar més problemes dels que val la pena, segons les exportacions de man 5.
  8. fsid=0 | arrel (zero o arrel): especifica que el sistema de fitxers especificat és l'arrel de diversos directoris exportats (només s'aplica a NFSv4).

En aquest article utilitzarem els directoris /NFS-SHARE i /NFS-SHARE/mydir a 192.168.0.10 (servidor NFS) com a nostre sistemes de fitxers de prova.

Sempre podem llistar els recursos compartits de xarxa disponibles en un servidor NFS mitjançant l'ordre següent:

# showmount -e [IP or hostname]

A la sortida anterior, podem veure que les accions /NFS-SHARE i /NFS-SHARE/mydir a 192.168.0.10 s'han exportat al client amb l'adreça IP 192.168.0.17.

La nostra configuració inicial (consulteu el directori /etc/exports del vostre servidor NFS) per al directori exportat és la següent:

/NFS-SHARE  	192.168.0.17(fsid=0,no_subtree_check,rw,root_squash,sync,anonuid=1000,anongid=1000)
/NFS-SHARE/mydir    	192.168.0.17(ro,sync,no_subtree_check)

Després d'editar el fitxer de configuració, hem de reiniciar el servei NFS:

# service nfs-kernel-server restart 		[sysvinit / upstart based system]
# systemctl restart nfs-server			[systemd based systems]

És possible que vulgueu consultar la Part 5 de la sèrie LFCS (Com muntar/desmuntar sistemes de fitxers locals i de xarxa (Samba i NFS) a Linux) per obtenir més informació sobre com muntar comparticions remotes de NFS sota demanda. utilitzant l'ordre mount o permanentment a través del fitxer /etc/fstab.

L'inconvenient de muntar un sistema de fitxers de xarxa mitjançant aquests mètodes és que el sistema ha d'assignar els recursos necessaris per mantenir la compartició muntada en tot moment, o almenys fins que decidim desmuntar-los manualment. Una alternativa és muntar automàticament el sistema de fitxers desitjat sota demanda (sense utilitzar l'ordre mount) mitjançant autofs, que pot muntar sistemes de fitxers quan s'utilitzen i desmuntar-los després. un període d'inactivitat.

Autofs llegeix /etc/auto.master, que té el format següent:

[mount point]	[map file]

On [fitxer de mapa] s'utilitza per indicar diversos punts de muntatge dins de [punt de muntatge].

Aquest fitxer de mapa mestre (/etc/auto.master) s'utilitza llavors per determinar quins punts de muntatge es defineixen i, a continuació, inicia un procés de muntatge automàtic amb els paràmetres especificats per a cada punt de muntatge.

Editeu el vostre /etc/auto.master de la següent manera:

/media/nfs	/etc/auto.nfs-share	--timeout=60

i creeu un fitxer de mapa anomenat /etc/auto.nfs-share amb el contingut següent:

writeable_share  -fstype=nfs4 192.168.0.10:/
non_writeable_share  -fstype=nfs4 192.168.0.10:/mydir

Tingueu en compte que el primer camp de /etc/auto.nfs-share és el nom d'un subdirectori dins de /media/nfs. Cada subdirectori es crea dinàmicament per autofs.

Ara, reinicieu el servei autofs:

# service autofs restart 			[sysvinit / upstart based systems]
# systemctl restart autofs 			[systemd based systems]

i, finalment, per permetre que autofs s'iniciï a l'arrencada, executeu l'ordre següent:

# chkconfig --level 345 autofs on
# systemctl enable autofs 			[systemd based systems]

Quan reiniciem autofs, l'ordre mount ens mostra que el fitxer de mapa (/etc/auto.nfs-share) està muntat a l'espai especificat. directori a /etc/auto.master:

Tingueu en compte que encara no s'ha muntat cap directori, però ho serà automàticament quan intentem accedir als recursos compartits especificats a /etc/auto.nfs-share:

Com podem veure, el servei autofs \munta el fitxer de mapa, per dir-ho d'alguna manera, però espera fins que es fa una sol·licitud als sistemes de fitxers per muntar-los realment.

Les opcions anonuid i anongid, juntament amb l'root_squash tal com s'estableix a la primera compartició, ens permeten mapar les sol·licituds realitzades per l'usuari root a la client a un compte local al servidor.

En altres paraules, quan root al client crea un fitxer en aquest directori exportat, la seva propietat s'assignarà automàticament al compte d'usuari amb UID i GID = 1000, sempre que aquest compte existeixi al servidor:

Conclusió

Espero que hàgiu pogut configurar i configurar correctament un servidor NFS adequat per al vostre entorn utilitzant aquest article com a guia. També podeu consultar les pàgines de manual rellevants per obtenir més ajuda (exportacions man i man idmapd.conf, per exemple).

No dubteu a experimentar amb altres opcions i casos de prova tal com s'ha indicat anteriorment i no dubteu a utilitzar el formulari següent per enviar els vostres comentaris, suggeriments o preguntes. Estarem encantats d'escoltar-te.