Me encuentro con un problema extraño en una máquina Unix / Linux:
Soy miembro de un grupo, llamémoslo grupo A y un determinado archivo (que tiene un propietario diferente) también pertenece al grupo A. Los permisos de ese archivo son
-rw-rw----
así que esperaría poder abrir ese archivo, pero no lo hago: recibiré el mensaje de error "Permiso denegado" cuando intento ver el contenido del archivo (usando cat).
Dado que los permisos parecen ser correctos, ¿qué más podría estar causando esto? ¿Existen restricciones de "anulación" de permisos? Si es así, ¿cómo me enteraría?
permissions
files
nfs
group
Lagerbaer
fuente
fuente
Respuestas:
¿Se ha desconectado y vuelto a iniciar sesión desde que fue agregado al grupo A?
De lo contrario, sus procesos de inicio de sesión actuales solo tendrán las membresías de grupo que tenía en el momento del inicio de sesión, sin cambios desde entonces. Y cualquier proceso secundario de ese inicio de sesión tendrá la misma membresía de grupo (es decir, si inició sesión en X, entonces todas las aplicaciones, incluido su emulador de terminal y shell)
Puede probar esto iniciando sesión nuevamente en otra consola o mediante ssh, o algo así
exec sudo -u $(id -u -n) -i
(para matar y reemplazar efectivamente el shell actual con un nuevo shell, cualquier proceso en segundo plano que pertenezca a ese shell quedará huérfano)fuente
Con NFS, depende del modo de seguridad que utilice, pero en el tradicional, el cliente envía la lista de grupos a los que pertenece el usuario al servidor, y hay un límite en la cantidad de grupos que se pueden enviar (era 16 la última vez que revisé).
Entonces, el cliente dice: soy uid 1234 y, por cierto, soy miembro de los grupos 12, 13, 14 ... Si estás en más de 16 grupos, esa lista se truncará y habrá grupos para que el servidor no sabe que eres miembro de él.
Esa es probablemente la explicación. Solo el administrador del sistema de la máquina local y / o remota puede hacer algo al respecto, ya sea cambiando el modelo de seguridad o la configuración del servidor NFS o reduciendo la cantidad de grupos de los que es miembro.
fuente
Como notas en un comentario, no tienes permisos de lectura
/home/username
. Pero para leer/home/username/path1/path2/file
, necesita ejecutar permisos para toda la ruta.Para depurar esto, ejecute
namei -l /home/username/path1/path2/file
como el usuario que lee el archivo.fuente
Podrían ser ACL. Ver
Podría ser que, por alguna razón, los grupos en los que debe estar no estén configurados correctamente. Comprobar con
Qué pasa
¿En qué tipo de sistema de archivos reside?
¿Aparece algún dispositivo, SELinux o cualquier otro control de acceso obligatorio en el sistema?
Estás seguro de que el archivo no contiene el texto "Permiso denegado", ¿verdad ;-)?
fuente