Estoy tratando de conectarme a una carpeta NFS en mi servidor de desarrollo. El propietario de la carpeta en el servidor de desarrollo es darren y el grupo darren.
Cuando lo exporto y lo monte en mi Mac usando la Utilidad de Discos, se monta, pero cuando trato de abrir la carpeta dice que no tengo permisos. He configurado rw, sync y no_subtree_check. El usuario en la Mac se atreve con un grupo de grupos.
¿Necesito tener el mismo grupo y usuario configurado para acceder a la carpeta?
Respuestas:
NFS está construido sobre la autenticación RPC. Con NFS versión 3, el mecanismo de autenticación más común es AUTH_UNIX. La identificación de usuario y la identificación de grupo del sistema cliente se envían en cada llamada RPC, y los permisos que tienen estas ID en el archivo al que se accede se verifican en el servidor. Para que esto funcione, el UID y los GID deben ser iguales en el servidor y los clientes. Sin embargo, puede forzar que todo el acceso ocurra como un solo usuario y grupo combinando las opciones de exportación all_squash, anonuid y anongid. all_squash asignará todos los UID y GID al usuario anónimo, y anonuid y anongid establecerán el UID y GID del usuario anónimo. Por ejemplo, si su UID y GID en su servidor de desarrollo son ambos 1001, puede exportar su directorio de inicio con una línea como
/home/darren 192.168.1.1/24(rw,all_squash,anonuid=1001,anongid=1001)
Estoy menos familiarizado con NFS versión 4, pero creo que puede configurar rpc.idmapd en los clientes para alterar el uid y gid que envían al servidor.
fuente
Cuando monta NFS, sus permisos con los que lo está montando deben coincidir con lo que tiene en el servidor. Por ejemplo, si su usuario solo tiene acceso de solo lectura, montarlo con lectura-escritura hará que vea los mismos errores que mencionó en su publicación cuando intenta cargar realmente el soporte. Desafortunadamente, esto SOLO aparecerá cuando acceda a la carpeta, no cuando realmente la monte.
También desea asegurarse de que el usuario NFS se esté ejecutando como en el servidor y que el usuario del cliente esté utilizando el mismo UID y GID. Puede verificar estos valores ejecutando
id darren
tanto en el servidor como en el cliente. Si los valores UID y GID no coinciden, puede editar/etc/passwd
para hacerlo, ¡pero asegúrese de comprender lo que está haciendo antes de cambiar arbitrariamente los valores!Algunas buenas fuentes:
¡Espero que esto ayude!
fuente
¿Sus UID y GID coinciden en ambos servidores? Eso es lo que está usando para controlar el acceso y no el inicio de sesión y el nombre del grupo.
fuente
Para mí, el problema se solucionó proporcionando una
_netdev
opción de montaje en el cliente.Es decir, agregue esto a
/etc/fstab
:fuente