4 votos

Problemas de herencia de ACL de v4 NFS - "i" de la flag establece pero no quería

Lo que estoy tratando de agregar un NFS v4 ACL que permite una directorios, hijo y nieto, nieto, etc directorios y archivos para heredar delete ('D') indicador de bajo linux. El sistema de archivos subyacente en el servidor es xfs y .

Yo no soy especialmente familiarizado con cualquiera de los dos.

El servidor es Centos 6.3, el cliente es Centos 6.4.

Por mi lectura de el hombre de la página de la 'i' flag significa establecer esta acl en niño archivos/directorios, pero no se aplican a la actual dir. Yo no soy la configuración de la 'i' de la flag en el primario ( /var/www/tauweb ), pero parece ser que se establece en la que cualquier niño dirs que se crean.

¿Qué pasa cuando escribo el siguiente Ases utilizando nfs4_getfacl en la dir /vaw/www/tauweb :

A::OWNER@:rwaDxtTcCy
A::GROUP@:rwaDxtcy
A::EVERYONE@:rxtcy
A:fdi:OWNER@:rwaDxtTcCy
A:fdi:GROUP@:rxtcy
A:dg:tau@ersa.edu.au:rwaDxtcy
A:fdi:EVERYONE@:rxtcy

es que el sistema en realidad escribe esto:

[root@tau www]# nfs4_getfacl tauweb/
A::OWNER@:rwaDxtTcCy
A::GROUP@:rwaDxtcy
A:g:tau@ersa.edu.au:rwaDxtcy
A::EVERYONE@:rxtcy
A:fdi:OWNER@:rwaDxtTcCy
A:fdi:GROUP@:rxtcy
A:fdig:tau@ersa.edu.au:rwaDxtcy
A:fdi:EVERYONE@:rxtcy

Nota el 'yo' en el último usuario tau de entrada. Que no se cuando he editado los Ases, sino que estaba presente inmediato - el sistema parece añadir.

Ahora la lectura de todos los docoo puedo encontrar indica el "dg" después de los primeros dos puntos en el juego superior de Ases deben causar la ACL tobe heredado del niño dirs (entiendo que la " g " indica que el director es un grupo, no un usuario).

Ahora el "yo" de la flag aparentemente significa, porque esto ACE a ser hereditaria, pero no consideramos que sea en real de perm cheques.

Entonces, cuando un niño dir /var/www/tauweb/d2 que se crea que se obtiene de estos:

[kkassahn@tau tauweb]$ nfs4_getfacl d2/
A::OWNER@:rwaDxtTcCy
A::GROUP@:rxtcy
A:g:tau@ersa.edu.au:rxtcy
A::EVERYONE@:rxtcy
A:fdi:OWNER@:rwaDxtTcCy
A:fdi:GROUP@:rxtcy
A:fdig:tau@ersa.edu.au:rwaDxtcy
A:fdi:EVERYONE@:rxtcy

Y el nieto /var/www/tauweb/d2/d3 obtiene estos:

[kkassahn@tau tauweb]$ nfs4_getfacl d2/d3/
A::OWNER@:rwaDxtTcCy
A::GROUP@:rxtcy
A:g:tau@ersa.edu.au:rxtcy
A::EVERYONE@:rxtcy
A:fdi:OWNER@:rwaDxtTcCy
A:fdi:GROUP@:rxtcy
A:fdig:tau@ersa.edu.au:rwaDxtcy
A:fdi:EVERYONE@:rxtcy

Ahora d2 es deletable - porque es de los padres /var/www/tauweb has el

A:g:tau@ersa.edu.au:rwaDxtcyAS. Pero que ACE no obtener heredado.

Sólo A:g:tau@ersa.edu.au:rxtcy se aplica a d2 y d3, aunque la heredan pero no consultar
A:fdig:tau@ersa.edu.au:rwaDxtcy se hereda por hijos, nietos, etc.

Cualquier ayuda o sugerencia muy apreciada, gracias.

4voto

Brad Puntos 1004

He encontrado la causa de este problema. Parece que el NFS v4 Acl tomar aplicar el umask del usuario. Mis usuarios tenían un umask 002, de manera que la falta de escritura en los demás fue el causante de la 'w' 'a' 'd' y 'D' banderas de ser eliminado.

Como lo que puedo decir que este comportamiento es diferente a POSIX Acl.

En cualquier caso, la solución para mí fue establecer el umask del usuario a 0.

En mi caso uno de los usuarios de apache, así que me puse a umask 000 en /etc/init.d/http.

El resto de usuarios fueron todos chroot SFTP usuarios y he utilizado pam_umask en el ssh pam config para establecer su umask 000.

Un amigo mío encontró la discusión sobre el tema aquí: http://www.spinics.net/lists/linux-nfs/msg27799.html

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: