Red Hat Enterprise Linux 3: Manual de referencia | ||
---|---|---|
Anterior | Capítulo 9. Sistema de archivos de red (NFS) | Siguiente |
Existen tres formas de configurar un servidor NFS bajo Red Hat Enterprise Linux: usando la Herramienta de configuración del servidor NFS (redhat-config-nfs), modificando manualmente su archivo de configuración (/etc/exports), o utilizando el comando /usr/sbin/exportfs.
Para las instrucciones sobre como utilizar Herramienta de configuración del servidor NFS, consulte el capítulo llamado Sistemas de archivo de red (NFS) en el Manual de administración del sistema de Red Hat Enterprise Linux. El resto de esta sección discute la modificación manual de /etc/exports y el uso del comando /usr/sbin/exportfs para exportar sistemas de archivos NFS.
El archivo /etc/exports controla cuáles sistemas de archivos son exportados a las máquinas remotas y especifica opciones. Las líneas en blanco son ignoradas, se pueden comentar líneas con el símbolo # y las líneas largas pueden ser divididas con una barra invertida (\). Cada sistema de archivos exportado debe tener su propia línea y cualquier lista de hosts autorizadas colocada después de un sistema de archivos exportado, debe estar separada por un espacio. Las opciones para cada uno de los hosts deben ser colocadas entre paréntesis directamente detrás del identificador del host, sin ningún espacio de separación entre el host y el primer paréntesis.
Una línea para un sistema de archivos exportado tiene la estructura siguiente:
<export> <host1>(<options>) <hostN>(<options>)... |
En esta estructura, reemplace <export> con el directorio a exportar, reemplace <host1> con el host o la red a la cual está siendo compartida la exportación y reemplace <options> con las opciones para cada host o red. Los hosts adicionales se pueden especificar en una lista separada por espacios.
Se pueden usar los métodos siguientes para especificar nombres de host:
una sola máquina — Cuando una máquina en particular es especificada con nombre completo de dominio, nombre de máquina o dirección IP.
comodines — Usamos un carácter * o ? para referirnos a un grupo de nombres completos de dominio o direcciones IP o que coincidan con una cadena particular de letras. Los comodines no son usados con direcciones IP; sin embargo, es posible para estos funcionar accidentalmente si fallan las búsquedas de DNS inversas.
Tenga cuidado cuando especifique comodines con nombres de dominio completos, pues tienden a ser más exactos de lo que usted cree. Por ejemplo, el uso de *.example.com como comodín, permitirá a ventas.domain.com acceder al sistema de archivos exportado, pero no a bob.ventas.domain.com. Para permitir ambas posibilidades, debería usar *.example.com y también *.*.example.com
redes IP — Permite la coincidencia de hosts basados en sus direcciones IP dentro de una red más grande. Por ejemplo, 192.168.0.0/28 permite al acceso a las primeras 16 direcciones IP, desde la 192.168.0.0 a la 192.168.0.15, acceder al sistema de archivos exportado, pero no a la 192.168.0.16 y superiores.
grupos de redes — Permite usar un nombre de grupo de red NIS, escrito como @<group-name>. Esto pone al servidor NIS controlando el acceso de este sistema de archivos, donde los usuarios pueden ser añadidos o borrados de un grupo NIS sin que afecte a /etc/exports.
En su forma más sencilla, /etc/exports sólo necesita saber el directorio a exportar y los hosts que pueden usarlo, como en el ejemplo siguiente:
/exported/directory bob.example.com |
En el ejemplo, bob.example.com puede montar /exported/directory/. Como no se especifica ninguna opción en este ejemplo, tomarán efecto las siguientes opciones predeterminadas de NFS:
ro — Se montan los sistemas de archivos como de sólo lectura (read-only). Los host remotos no pueden hacer cambios a los datos compartidos en el sistema de archivos. Para permitir que los hosts puedan hacer cambios, debe especificar la opción rw (lectura-escritura, read-write).
async — Permite al servidor escribir los datos en el disco a intervalos irregulares. Esta configuración funciona mejor si el sistema de archivos exportado es de sólo lectura. Si el sistema de archivos de lectura/escritura y los hosts están haciendo cambios al sistema de archivos cuando el servidor se cae o se apaga, se pueden perder datos. Especificando la opción sync, todas las escrituras en el disco se efectúan antes de que la petición de escritura del cliente se haya completado. Sin embargo, la opción sync, puede que disminuya el rendimiento.
wdelay — Provoca que el servidor NFS retrase el escribir a disco si sospecha que otra petición de escritura es inminente. Esto puede mejorar el rendimiento reduciendo las veces que se debe acceder al disco por comandos de escritura separados. Use no_wdelay para desactivar esta opción, la cual sólo funciona si está usando la opción sync.
root_squash — Previene a los usuarios root conectados remotamente de tener privilegios como root asignándoles el id del usuario de nobody. Esto reconvierte el poder del usuario root remoto al de usuario local más bajo, previniendo la alteración desautorizada de archivos en el servidor remoto. Alternativamente, la opción no_root_squash lo desactiva. Para reconvertir a todos los usuarios, incluyendo a root, use la opción all_squash. Para especificar los ID de usuario y grupo para usar con usuarios remotos desde un host particular, utilice las opciones anonuid y anongid, respectivamente. De esta manera, puede crear una cuenta de usuario especial para que los usuarios NFS remotos compartan y especificar (anonuid=<uid-value>,anongid=<gid-value>), donde <uid-value> es el número de ID del usuario y <gid-value> es el número de ID del grupo.
![]() | Importante |
---|---|
Por defecto, las listas de control de acceso (ACLs) son soportadas por NFS bajo Red Hat Enterprise Linux. Para desactivar esta funcionalidad, especifique la opción no_acl cuando esté exportando el sistema de archivos. Para más información sobre esta funcionalidad, vea el capítulo Sistemas de archivo de red (NFS) en el Manual de administración del sistema de Red Hat Enterprise Linux. |
Cada valor predeterminado para un sistema de archivos exportado debe ser explícitamente ignorado. Por ejemplo, si no se especifica la opción rw, entonces el sistema de archivos es exportado como de sólo lectura. Lo siguiente es una línea de muestra de /etc/exports la cual sobreescribe dos opciones predeterminadas:
/another/exported/directory 192.168.0.3(rw,sync) |
En este ejemplo 192.168.0.3 puede montar /another/exported/directory/ como lectura/escritura y todas las transferencias al disco son efectuadas antes de completar la petición de escritura del cliente.
Adicionalmente, hay otra opciones que están disponibles que no tienen especificado un valor predeterminado. Estas incluyen la habilidad de desactivar la verificación por subdirectorios, permitir el acceso desde puertos inseguros y permitir bloquear archivos inseguros (necesario para algunas implementaciones antiguas de clientes NFS). Vea la página man de exports para estas opciones menos usadas.
![]() | Aviso | |
---|---|---|
La manera en que el archivo /etc/exports está organizado es muy importante, particularmente lo que concierne a los espacios en blanco. Recuerde separar siempre los sistemas de archivos exportados de una máquina a la otra, con un espacio. Sin embargo, no debería haber otros espacios en el archivo a menos que se usen en líneas comentadas. Por ejemplo, las siguientes dos líneas significan cosas distintas:
La primera línea permite sólo a los usuarios de bob.example.com acceder en modo de lectura/escritura al directorio /home. La segunda línea permite a los usuarios de bob.example.com montar el directorio de sólo lectura (el predeterminado), pero el resto del mundo puede instalarlo como lectura/escritura. |
Para instrucciones detalladas sobre la configuración de un servidor NFS modificando /etc/exports, consulte el capítulo titulado Sistemas de archivos de red (NFS) en el Manual de administración del sistema de Red Hat Enterprise Linux.
Cada sistema de archivos que se exporta a usuarios remotos a través de NFS, así como los niveles de acceso relativos a ellos, son listados en el archivo /etc/exports. Cuando comienza el servicio nfs, el comando /usr/sbin/exportfs lanza y lee este archivo y pasa a rpc.mountd y a rpc.nfsd los sistemas de archivos disponibles a los usuarios remotos.
Cuando se ejecuta manualmente, el comando /usr/sbin/exportfs permite al usuario root exportar o no directorios concretos sin reiniciar los servicios NFS. Cuando se le pasan las opciones apropiadas, el comando /usr/sbin/exportfs escribe los sistemas de archivos exportados a /var/lib/nfs/xtab. Como rpc.mountd se refiere al archivo xtab para decidir privilegios de acceso a un sistema de archivos, los cambios en la lista de sistemas de archivos exportados toman efecto inmediatamente.
Lo siguiente es una lista de las opciones más comunes disponibles para /usr/sbin/exportfs:
-r — Provoca que todos los directorios listados en /etc/exports sean exportados construyendo una nueva lista de exportación en /etc/lib/nfs/xtab. Esta opción refresca la lista de exportación con cualquier cambio que hubiéramos realizado en /etc/exports.
-a — Provoca que todos los directorios sean exportados o no, dependiendo de qué otras opciones hemos pasado a /usr/sbin/exportfs. Si no se pasan otras opciones, /usr/sbin/exportfs exporta todos los sistemas de archivos especificados en /etc/exports.
-o file-systems — Permite especificar directorios a exportar que no estén listados en /etc/exports. Reemplace file-systems con los sistemas de archivos adicionales a exportar. Estos sistemas de archivos deben tener el mismo formato en que fueron especificados en /etc/exports. Consulte la Sección 9.3.1 para más información sobre la sintaxis de /etc/exports. Esta opción es usada para probar un sistema de archivos antes de añadirlo permanentemente a la lista de sistemas a exportar.
-i — Ignora /etc/exports; sólo las opciones dadas desde la línea de comandos son usadas para definir los sistemas de archivos exportados.
-u — No exporta todos los directorios compartidos. El comando /usr/sbin/exportfs -ua suspende la compartición de archivos NFS mientras que mantiene todos los demonios NFS activos. Para reactivar la compartición NFS, teclee exportfs -r.
-v — Operación descriptiva, donde los sistemas de archivos exportados o dejados de exportar son mostrados en gran detalle al ejecutarse el comando exportfs.
Si no se pasan opciones al comando /usr/sbin/exportfs, mostrará una lista de los sistemas de archivos actualmente exportados.
Para más información sobre /usr/sbin/exportfs, vaya a la página man de exportfs.