GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Otorgar permiso para nuevos archivos creados dentro de la carpeta automáticamente?

Tengo una carpeta cuyo permiso está establecido en 777 pero cuando agrego cualquier archivo o carpeta que descomprimo en esa carpeta. Los archivos extraídos o el permiso de la carpeta nunca cambian. El permiso de la carpeta de destino es 777 y quiero que lo que agregue en esa carpeta obtenga automáticamente el permiso 777.

Cuando agrego cualquier archivo o carpeta extrayendo .zip en esa carpeta, el permiso de carpeta/archivos extraídos no cambiará automáticamente. ¡Siempre tengo que usar chmod para agregar archivos/carpetas recientemente!

Respuesta aceptada:

Lo que quieres se llama ACL – Listas de control de acceso.

La lista de control de acceso (ACL) proporciona un mecanismo de permisos
adicional y más flexible para los sistemas de archivos. Está diseñado para asistir con
permisos de archivo UNIX. ACL le permite otorgar permisos para cualquier usuario
o grupo a cualquier recurso de disco.

acl el paquete ya debe estar instalado, para verificarlo ejecute:dpkg -s acl .

Para usar ACL, debe habilitarlo para su sistema de archivos. Pero puede estar ya habilitado . Para verificarlo use tune2fs -l . Sustituir /dev/sda6 para su sistema:

$ tune2fs -l /dev/sda6 | grep "Default mount options:"
Default mount options:    user_xattr acl

Si ve acl palabra:ya está habilitado para el dispositivo /dev/sda6 .

Si no ve acl palabra:ejecute tune2fs -o acl /dev/sda6 para habilitarlo.

Para modificar ACL use setfacl dominio. Para agregar permisos, use setfacl -m .

Para establecer permisos para el usuario:

$ setfacl -m "u:username:rwx" /path/to/folder

Esto configurará rwx ACL, para el usuario username a /ruta/a/carpeta. Esto significa que todos los archivos creados en esta carpeta tendrán rwx permiso para username .

Para establecer permisos para el grupo:

$ setfacl -m "g:groupname:rwx" /path/to/folder

Esto establecerá rwx ACL, para el grupo groupname a /ruta/a/carpeta. Esto significa que todos los archivos creados en esta carpeta tendrán rwx permiso para el grupo groupname .

Para establecer permisos para otros:

$ setfacl -m "o:rwx" /path/to/folder

Esto establecerá rwx ACL, para otro a /ruta/a/carpeta. Esto significa que todos los archivos creados en esta carpeta tendrán rwx permiso para otros.

Para verificar el permiso:

$ getfacl /path/to/folder

Para combinar acl

$ setfacl -m u:username:rwx,g:groupname:rwx,o:rwx /path/to/folder

LCA predeterminada

 The new object inherits the default ACL of the containing directory as its
 access ACL.

 If no default ACL is associated with a directory, the mode parameter to the func‐
 tions creating file objects and the file creation mask (see umask(2)) are used to
 determine the ACL of the new object:

 The new object is assigned an access ACL containing entries of tag types
 ACL_USER_OBJ, ACL_GROUP_OBJ, and ACL_OTHER. The permissions of these entries
 are set to the permissions specified by the file creation mask.

Entonces, si establece una ACL predeterminada, sería preferida LCA. Eso significa que si establece ACL para user o group , el nuevo archivo creado heredaría predeterminado acl de todos modos . Tenga cuidado con la ACL predeterminada.

Relacionado:¿Cómo cambiar/convertir una unidad Ubuntu Mbr a Gpt y hacer que Ubuntu arranque desde Efi en Ubuntu?

Para establecer el uso predeterminado de ACL -d clave,

$ setfacl -d -m u::rwx,g::rwx,o::rwx /path/to/folder

o use default palabra

$ setfacl -m default:u::rwx,default:g::rwx,default:o::rwx /path/to/folder

Tenga cuidado con la configuración de ACL predeterminada. Por ejemplo, si se establece así:

$ setfacl -d -m o:--x /path/to/folder

y ahora busca esta ACL

$ getfacl /path/to/folder
# file: path/to/folder
# owner: c0rp
# group: c0rp
user::rwx
group::rwx
other::--x
default:user::rwx
default:group::rwx
default:other::--x

la LCA predeterminada para el grupo y el usuario será rwx automáticamente!

Eliminar LCA

$ setfacl -b /path/to/folder

Esto eliminará todas las ACL de la carpeta

Finalmente

Si solo es un usuario en el sistema, le recomiendo usar la ACL predeterminada.

$ setfacl -d -m u::rwx,g::rwx,o::rwx /path/to/folder

Esto hará lo que quieras para /ruta/a/carpeta

Fuentes

archlinux – https://wiki.archlinux.org/index.php/Access_Control_Lists

ayuda.ubuntu – https://help.ubuntu.com/community/FilePermissionsACLs


Ubuntu
  1. Para cambiar el permiso de directorio y archivos

  2. ¿Script para monitorear la carpeta en busca de nuevos archivos?

  3. ¿Clonar programáticamente /etc/skel para nuevos usuarios?

  4. ¿Cómo crear una nueva carpeta o archivos en el Administrador de archivos de cPanel?

  5. ¿Cómo fuerzo el grupo y los permisos para los archivos creados dentro de un directorio específico?

7 impresionantes nuevos reproductores de música para Linux

8 comandos fundamentales de administración de archivos de Linux para nuevos usuarios

¿N Ftp Client (gui) que me permitirá buscar texto dentro de los archivos?

Acceso directo de Shell/Bash para cambiar el nombre de los archivos en una carpeta

secuencia de comandos para monitorear nuevos archivos en una carpeta compartida (host de Windows, invitado de Linux)

¿Cómo configurar los permisos de Linux para la carpeta WWW?