GNU/Linux >> Tutoriales Linux >  >> Cent OS

El punto de montaje NFSv4 muestra propiedades incorrectas como nadie:nadie en CentOS/RHEL

El problema

El montaje NFSv4 muestra incorrectamente todos los archivos con propiedad como “nadie:nadie “. Desde el servidor del cliente, el recurso compartido NFSv4 montado tiene la propiedad de todos los archivos y directorios enumerados como nadie:nadie en lugar del usuario real que los posee en el servidor NFSv4, o incluso quién creó el nuevo archivo y directorio.

También veo el siguiente error en /var/log/messages:

nss_getpwnam: name ‘[email protected]’ does not map into domain 'localdomain'

Causa raíz

En NFSv3, el nombre de usuario y el nombre de grupo se asignan a partir del valor de UID/GID, el UID/GID del usuario que crea el recurso se guarda en el servidor. Cuando los servidores del cliente accedan a él, se verificará el archivo /etc/passwd y /etc/gpasswd para ver si existe la identificación y para qué usuario se asignará. Si hay un usuario con el mismo uid y gid, se asignará a ese usuario; de lo contrario, se mostrará el valor numérico.

En NFSv4, el concepto es usuario@nombrededominio, si no hay una asignación de usuarios centralizada, el usuario se asignará al usuario predeterminado nadie o cualquier usuario que se haya configurado en /etc/idmapd.conf.

Primero verifique si hay una configuración incorrecta de /etc/imapd.conf expediente. Si realiza cambios en el archivo idmapd.conf, en CentOS/RHEL 6.5 y versiones posteriores, el comando para limpiar las asignaciones antiguas es:

# nfsidmap -c

NFSv4 utiliza la asignación de ID para garantizar que los permisos se establezcan correctamente en los recursos compartidos exportados. Si los dominios del servidor del cliente y del servidor principal no coinciden, los permisos se asignan a none:nadie.

La solución

1. Cambie el /etc/idmapd.conf con el nombre de dominio completo (FQDN) adecuado, tanto en el cliente como en el servidor principal. En este ejemplo, el dominio correcto es "example.com", por lo que la directiva "Domain =" dentro de /etc/idmapd.conf debe modificarse para que diga:

# vi /etc/idmapd.conf
Domain = oracle.com

2. Para aplicar los cambios, reinicie el servicio rpcidmapd y vuelva a montar el sistema de archivos NFSv4:

# service rpcidmapd restart
# mount -o remount /nfs/mnt/point
Nota :Solo es necesario reiniciar el servicio rpc.idmapd en los sistemas donde rpc.idmapd realmente está realizando el mapeo de id. En RHEL 6.3 y CLIENTES NFS más recientes, los mapas se almacenan en el conjunto de claves del núcleo y el programa /sbin/nfsidmap realiza la asignación de id. En CLIENTES NFS anteriores (RHEL 6.2 y anteriores), así como en todos los SERVIDORES NFS que ejecutan RHEL, el mapeo de id lo realiza rpc.idmapd. Asegúrese de que el cliente y el servidor tengan UID y GID coincidentes. Es un error común pensar que los UID y los GID pueden ser diferentes cuando se usa NFSv4. El propósito del mapeo de id es mapear id a un nombre y viceversa. El mapeo de ID no pretende reemplazar la gestión de ID.

En Red Hat Enterprise Linux 6, si se aplicaron las configuraciones anteriores y los UID/GID coinciden en el servidor y el cliente y los usuarios aún se asignan a none:nadie, entonces es posible que se requiera borrar el caché de idmapd.

# nfsidmap -c
Nota :El comando anterior solo es necesario en sistemas que usan el mapeador de ID basado en llavero, p. CLIENTES NFS que ejecutan RHEL 6.3 y superior. En RHEL 6.2 y CLIENTES NFS anteriores, así como en todos los SERVIDORES NFS que ejecutan RHEL, la memoria caché se borra cuando se reinicia rpc.idmapd. Otra verificación, vea si las configuraciones passwd:, shadow:y group:están configuradas correctamente en el archivo /etc/nsswitch.conf en los servidores Padre y Cliente.

Deshabilitar el mapeo de id

De manera predeterminada, RHEL6.3 y los clientes y servidores NFS más nuevos deshabilitan la asignación de id cuando se utiliza el tipo de autenticación AUTH_SYS/UNIX al habilitar las siguientes declaraciones booleanas:

servidor cliente NFS

# echo 'Y' > /sys/module/nfs/parameters/nfs4_disable_idmapping

servidor principal NFS

# echo 'Y' > /sys/module/nfsd/parameters/nfs4_disable_idmapping

Resolución de problemas

Si el plan anterior no resuelve su problema, realice los siguientes pasos de diagnóstico:

1. La depuración/verbosidad se puede habilitar editando /etc/sysconfig/nfs :

# vi /etc/sysconfig/nfs
RPCIDMAPDARGS="-vvv"

2. El siguiente resultado se muestra en /var/log/messages cuando el montaje ha terminado de montarse y el sistema muestra nadie:nadie como usuario y permisos de grupo en directorios y archivos:

Jul 3 00:23:18 node1 rpc.idmapd[1874]: nss_getpwnam: name ‘[email protected]’ does not map into domain ‘localdomain’
Jun 3 00:26:54 node1 rpc.idmapd[1874]: nss_getpwnam: name ‘[email protected]’ does not map into domain ‘localdomain’

3. Recopile un tcpdump del intento de montaje:

# tcpdump -s0 -i {INTERFACE} host {NFS.SERVER.IP} -w /tmp/{SR_number}-$(hostname)-$(date +”%Y-%m-%d-%H-%M-%S”).pcap &


Cent OS
  1. Cómo instalar Puppet en CentOS 8 / RHEL 8

  2. Configurar el servidor SysLog en CentOS 6 / RHEL 6

  3. Cómo instalar Puppet 6.x en CentOS 7 / RHEL 7

  4. El cliente NFSv4 muestra a "nadie" como propietario y grupo para el punto de montaje (CentOS/RHEL)

  5. Instale MySQL 5.6 en CentOS 7 / RHEL 7

Cómo instalar el servidor Redis en CentOS 8 / RHEL 8

Cómo configurar el servidor NFS en CentOS 8 / RHEL 8

Cómo instalar Zabbix Server 4.x en CentOS 6 / RHEL 6

Instale la GUI de Gnome en CentOS 7 / RHEL 7

Instale Nginx en CentOS 7 / RHEL 7

Cómo instalar el servidor Zabbix 5.0/4.0 en CentOS 7/RHEL 7