Utilizando esta útil publicación, puedo establecer un grupo predeterminado y permisos de archivo en una carpeta.
Tengo problemas para configurar un propietario predeterminado (teamlead uid 1234).
setfacl -d -m g::rwx /my/test/folder
setfacl -d -m o::rx /my/test/folder
getfacl /my/test/folder
# file: /my/test/folder
# owner: teamlead
# group: web_prod
# flags: -s-
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::rwx
default:other::r-x
Con ese:
[mary@boxen]# touch /my/test/folder/somefile
[mary@boxen]# ll /my/test/folder/somefile
-rw-rw-r--. 1 mary web_prod 0 Nov 6 08:58 somefile
Por lo tanto, se asigna el grupo correcto, pero el nuevo archivo tiene la propiedad del usuario que crea el archivo. Me gustaría que los archivos recién creados tengan teamlead: web_prod owner / group.
Parece que también setfacl
se puede usar para establecer un usuario predeterminado. Con la carpeta existente config de acl (arriba):
[mary@boxen]# setfacl -d -m u:1234:rwx /my/test/folder
Ahora para crear un archivo como un usuario diferente. Espero que tenga teamlead: propiedad de web_prod.
[mary@boxen]# touch /my/test/folder/anotherfile
[mary@boxen]# ll /my/test/folder/anotherfile
-rw-rw-r--+ 1 mary web_prod 0 Nov 6 08:58 somefile
El nuevo archivo todavía tiene la propiedad del propietario que crea el archivo, no el 1234 (teamlead).
¿Es posible lo que busco, o la forma en que estoy haciendo esto está mal?
Siempre se crea un nuevo archivo que pertenece al usuario con el que se ejecuta el proceso de creación del archivo. (El ID de usuario efectivo, para ser precisos). Esto no se puede cambiar, ya que permitir a los usuarios crear archivos que pertenecen a otros usuarios sería un agujero de seguridad, similar a permitir que los usuarios no root regalen un archivo .
Lo que sea que estés tratando de hacer, no necesitas hacer esto. Las ACL son suficientes para garantizar que cualquier cosa que necesite leer el archivo más adelante tenga permisos suficientes. Deje el archivo propiedad del usuario que lo creó.
fuente
g+s
).Si desea que los nuevos archivos se creen con el nuevo grupo, debe cambiar el grupo primario.
Para esto puede usar usermod y el parámetro -g
p.ej
fuente
En Linux, debe tener sgid en el directorio principal para heredar el grupo de archivos. (Aunque no necesita sgid en el directorio en sistemas BSD).
fuente