GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Accorder automatiquement l'autorisation pour les nouveaux fichiers créés dans le dossier ?

J'ai un dossier dont l'autorisation est définie sur 777, mais lorsque j'ajoute des fichiers ou des dossiers, décompressez-les dans ce dossier. Les fichiers extraits ou l'autorisation de dossier ne changent jamais. L'autorisation du dossier de destination est 777 et je veux que ce que je vais ajouter dans ce dossier obtienne automatiquement l'autorisation 777.

Lorsque j'ajoute des fichiers ou des dossiers en extrayant .zip dans ce dossier, l'autorisation des dossiers/fichiers extraits ne change pas automatiquement. Je dois toujours utiliser chmod pour ajouter un nouveau fichier/dossier !

Réponse acceptée :

Ce que vous voulez s'appelle ACL – Listes de contrôle d'accès.

La liste de contrôle d'accès (ACL) fournit un mécanisme d'autorisation
supplémentaire et plus flexible pour les systèmes de fichiers. Il est conçu pour aider avec
les autorisations de fichiers UNIX. ACL vous permet d'accorder des autorisations à n'importe quel utilisateur
ou groupe sur n'importe quelle ressource de disque.

acl Le package doit déjà être installé, pour le vérifier exécutez :dpkg -s acl .

Pour utiliser les ACL, vous devez l'activer pour votre système de fichiers. Mais il peut être déjà activé . Pour le vérifier, utilisez tune2fs -l . Remplacez /dev/sda6 pour votre système :

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

Si vous voyez acl mot - il est déjà activé pour le périphérique /dev/sda6 .

Si vous ne voyez pas acl mot - exécutez tune2fs -o acl /dev/sda6 pour l'activer.

Pour modifier l'ACL, utilisez setfacl commande. Pour ajouter des autorisations, utilisez setfacl -m .

Pour définir l'autorisation de l'utilisateur :

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

Cela définira rwx ACL, pour l'utilisateur username vers /chemin/vers/dossier. Cela signifie que tous les fichiers créés dans ce dossier auront rwx autorisation pour username .

Pour définir l'autorisation d'un groupe :

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

Cela définira rwx ACL, pour le groupe groupname vers /chemin/vers/dossier. Cela signifie que tous les fichiers créés dans ce dossier auront rwx autorisation pour le groupe groupname .

Pour définir une autorisation pour d'autres :

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

Cela définira rwx ACL, pour autre vers /chemin/vers/dossier. Cela signifie que tous les fichiers créés dans ce dossier auront rwx autorisation pour les autres.

Pour vérifier l'autorisation :

$ getfacl /path/to/folder

Pour combiner acl

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

ACL par défaut

 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.

Donc, si vous définissez l'ACL par défaut, ce serait préféré LCA. Cela signifie que si l'ACL est définie pour user ou group , le nouveau fichier créé hériterait de par défaut acl de toute façon . Soyez prudent avec l'ACL par défaut.

En relation:Comment changer/convertir un lecteur Ubuntu Mbr en Gpt et faire démarrer Ubuntu à partir d'Efi dans Ubuntu ?

Pour définir l'acl par défaut, utilisez -d clé,

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

ou utilisez default mot

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

Soyez prudent avec la définition de l'ACL par défaut. Par exemple, si défini comme ceci :

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

et récupérez maintenant cette 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

l'ACL par défaut pour le groupe et l'utilisateur sera rwx automatiquement !

Supprimer la LCA

$ setfacl -b /path/to/folder

Cela supprimera toutes les ACL du dossier

Enfin

Si vous n'êtes qu'un utilisateur du système, je vous recommande d'utiliser l'ACL par défaut.

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

Cela fera ce que vous voulez pour /path/to/folder

Sources

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

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


Ubuntu
  1. Script pour surveiller le dossier pour les nouveaux fichiers ?

  2. Facl Ignorant La Permission "x" Mais Uniquement Sur Les Fichiers ?

  3. Le dossier et les fichiers du bureau ont disparu ?

  4. Récupérer le dossier supprimé dans la maison cryptée ?

  5. Correctif pour la nouvelle vulnérabilité du noyau 64 bits ?

7 nouveaux lecteurs de musique impressionnants pour Linux

8 commandes fondamentales de gestion de fichiers Linux pour les nouveaux utilisateurs

N Client FTP (gui) qui me permettra de rechercher du texte dans des fichiers ?

Rechercher des fichiers avec Gui ?

Comment créer un nouveau dossier ou des fichiers dans le gestionnaire de fichiers cPanel ?

Raccourci Shell/Bash pour renommer en bloc des fichiers dans un dossier