Estoy tratando de establecer permisos en un servidor entre usuarios que usan ACL. Cuando «estoy verificando su estado en uno de los directorios usando getfacl dir10
, muestra:
root@svn:/srv/resources/somedir# getfacl dir10 # file: dir10 # owner: root # group: mygroup # flags: -s-
¿Qué significan estas banderas? ¿Cómo puedo cambiarlos?
Respuesta
de man getfacl
:
The output format of getfacl is as follows: 1: # file: somedir/ 2: # owner: lisa 3: # group: staff 4: # flags: -s- [...] Line 4 indicates the setuid (s), setgid (s), and sticky (t) bits: either the letter representing the bit, or else a dash (-). This line is included if any of those bits is set and left out otherwise, so it will not be shown for most files. (See CONFORMANCE TO POSIX 1003.1e DRAFT STANDARD 17 below.)
para configurar estos valores, consulte man setfacl
:
--restore=file Restore a permission backup created by `getfacl -R" or similar. All permissions of a complete directory subtree are restored using this mechanism. If the input contains owner comments or group comments, setfacl attempts to restore the owner and owning group. If the input contains flags comments (which define the setuid, setgid, and sticky bits), setfacl sets those three bits accordingly; otherwise, it clears them. This option cannot be mixed with other options except `--test".
Responder
@ umläute Es completamente correcto acerca de lo que significa la bandera. Sin embargo, para deshacerse del -s-
, debe eliminarlo de los permisos UNIX
.
Es decir,
chmod g-s ./dir10
El --restore=file
solo revierte los permisos a un nivel anterior (que puede eliminar el setgid, o puede que no.) Y no creo que funcione en directorios, solo archivos.