4.6. Configuración del servidor NFS
Esta sección describe la sintaxis y las opciones de dos formas de configurar las exportaciones en un servidor NFS:
-
Edición manual del archivo de configuración
/etc/exports
-
Utilizando la utilidad
exportfs
en la línea de comandos
4.6.1. El archivo de configuración /etc/exports
El archivo /etc/exports
controla qué sistemas de archivos se exportan a los hosts remotos y especifica las opciones. Sigue las siguientes reglas de sintaxis:
- Las líneas en blanco se ignoran.
-
Para añadir un comentario, inicie una línea con la marca de almohadilla (
#
). -
Puede envolver las líneas largas con una barra invertida (
\
). - Cada sistema de archivos exportado debe estar en su propia línea individual.
- Cualquier lista de hosts autorizados colocada después de un sistema de archivos exportado debe estar separada por caracteres de espacio.
- Las opciones para cada uno de los hosts deben colocarse entre paréntesis directamente después del identificador del host, sin espacios de separación entre el host y el primer paréntesis.
Entrada de exportación
Cada entrada de un sistema de archivos exportado tiene la siguiente estructura:
export host(options)
También es posible especificar varios hosts, junto con opciones específicas para cada uno de ellos. Para ello, escríbalos en la misma línea como una lista delimitada por espacios, con cada nombre de host seguido de sus respectivas opciones (entre paréntesis), como en:
export host1(options1) host2(options2) host3(options3)
En esta estructura:
- export
- El directorio que se exporta
- host
- El host o la red a la que se comparte la exportación
- options
- Las opciones que se utilizarán para el anfitrión
Ejemplo 4.1. Un simple archivo /etc/exports
En su forma más simple, el archivo /etc/exports
sólo especifica el directorio exportado y los hosts autorizados a acceder a él:
/exportado/directorio bob.ejemplo.com
Aquí, bob.example.com
puede montar /exported/directory/
desde el servidor NFS. Como no se especifican opciones en este ejemplo, NFS utiliza las opciones por defecto.
El formato del archivo /etc/exports
es muy preciso, sobre todo en lo que respecta al uso del carácter de espacio. Recuerde que siempre debe separar los sistemas de archivos exportados de los hosts y los hosts entre sí con un carácter de espacio. Sin embargo, no debe haber ningún otro carácter de espacio en el archivo, excepto en las líneas de comentario.
Por ejemplo, las dos líneas siguientes no significan lo mismo:
/home bob.example.com(rw) /home bob.example.com (rw)
La primera línea permite que sólo los usuarios de bob.example.com
tengan acceso de lectura y escritura al directorio /home
. La segunda línea permite a los usuarios de bob.example.com
montar el directorio como sólo lectura (el valor predeterminado), mientras que el resto del mundo puede montarlo como lectura/escritura.
Opciones por defecto
Las opciones por defecto para una entrada de exportación son:
ro
- El sistema de archivos exportado es de sólo lectura. Los hosts remotos no pueden cambiar los datos compartidos en el sistema de archivos. Para permitir a los hosts realizar cambios en el sistema de archivos (es decir, leer y escribir), especifique la opción rw.
sync
-
El servidor NFS no responderá a las solicitudes antes de que los cambios realizados por las solicitudes anteriores se escriban en el disco. Para habilitar las escrituras asíncronas en su lugar, especifique la opción
async
. wdelay
-
El servidor NFS retrasará la escritura en el disco si sospecha que otra petición de escritura es inminente. Esto puede mejorar el rendimiento, ya que reduce el número de veces que se debe acceder al disco mediante comandos de escritura separados, reduciendo así la sobrecarga de escritura. Para desactivar esto, especifique la opción
no_wdelay
, que sólo está disponible si también se especifica la opción de sincronización por defecto. root_squash
Esto evita que los usuarios root conectados remotamente (en lugar de localmente) tengan privilegios de root; en su lugar, el servidor NFS les asigna el ID de usuario
nobody
. Esto efectivamente "aplasta" el poder del usuario root remoto al usuario local más bajo, evitando posibles escrituras no autorizadas en el servidor remoto. Para desactivar el aplastamiento de la raíz, especifique la opciónno_root_squash
.Para aplastar a todos los usuarios remotos (incluido el root), utilice la opción
all_squash
. Para especificar los identificadores de usuario y grupo que el servidor NFS debe asignar a los usuarios remotos de un determinado host, utilice las opcionesanonuid
yanongid
, respectivamente, como en:export host(anonuid=uid,anongid=gid)
Aquí, uid y gid son el número de identificación del usuario y el número de identificación del grupo, respectivamente. Las opciones
anonuid
yanongid
permiten crear una cuenta especial de usuario y de grupo para que los usuarios remotos de NFS la compartan.
Por defecto, las listas de control de acceso (ACL) son soportadas por NFS bajo Red Hat Enterprise Linux. Para desactivar esta función, especifique la opción no_acl
al exportar el sistema de archivos.
Opciones por defecto y anuladas
Cada valor por defecto para cada sistema de archivos exportado debe ser anulado explícitamente. Por ejemplo, si no se especifica la opción rw
, el sistema de archivos exportado se comparte como de sólo lectura. La siguiente es una línea de ejemplo de /etc/exports
que anula dos opciones por defecto:
/otro/exportado/directorio 192.168.0.3(rw,async)
En este ejemplo, 192.168.0.3
puede montar /another/exported/directory/
lectura y escritura, y todas las escrituras en disco son asíncronas.