Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 17/12/2023, à 17:40

metalux

[Résolu]ACL sur fichiers déjà existants d'un dossier

Bonjour,

Je souhaite donner les droits de lecture aux fichiers et lecture/exécution pour les dossiers dans un répertoire. J'utilise les ACL pour le faire mais je n'arrive pas à les appliquer pour les fichiers déjà existants, seuls les nouveaux fichiers héritent des ACL:

Exemple à partir de dossiers/fichiers déjà existants:

Dossier_A/fichierA
Dossier_A/dossier1
Dossier_A/dossier1/dossier2
Dossier_A/dossier1/fichierB

Si je passe la commande:

setfacl -Rdm u:test:rX Dossier_A

alors les ACL appliquées sont bien prises en compte pour Dossier_A, dossier1 et dossier2 ainsi que tous les nouveaux dossiers ou fichiers mais pas pour les fichiers déjà existants. (droits rx pour les dossiers et r pour les nouveaux fichiers pour l'utilisateur test)

Y-a-t-il une solution pour les appliquer aux fichiers déjà existants comme c'est le cas pour les dossiers ou est-ce le comportement normal de setfacl? S'il s'agit du comportement normal, comment faire dans ce cas? (utilisation de find de manière récursive je suppose)

Dernière modification par metalux (Le 19/12/2023, à 22:31)

Hors ligne

#2 Le 19/12/2023, à 22:30

metalux

Re : [Résolu]ACL sur fichiers déjà existants d'un dossier

A défaut de réponse je me réponds big_smile
Je ne suis pas sûr de ma réponse mais ça fonctionne, alors.... Par contre si quelqu'un peut me confirmer que j'ai bien compris la commande setfacl, je veux bien.

L'option -d permet d'appliquer une ACL et récursivement avec l'option -R mais uniquement sur les répertoires.
Il faut donc passer la commande:

setfacl -Rm u:test:rX Dossier_A

avant de passer la commande:

setfacl -Rdm u:test:rX Dossier_A

pour une prise en compte sur les fichiers déjà existants.

Hors ligne

#3 Le 19/12/2023, à 23:07

jplemoine

Re : [Résolu]ACL sur fichiers déjà existants d'un dossier

Le man de setfaacl donne :

-R, --recursive
           Apply operations to all files and directories recursively

C'est à dire que cela va s'appliquer sur les fichiers de Dossier_A mais aussi sur ses sous-répertoires et leur contenu.

Le -d dit juste d'appliquer la modification sur l'entrée par défaut.

Mais pourquoi ne pas avoir utiliser chmod ?


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Déconnecté jusqu’à nouvel ordre

Hors ligne

#4 Le 19/12/2023, à 23:36

metalux

Re : [Résolu]ACL sur fichiers déjà existants d'un dossier

Le -d dit juste d'appliquer la modification sur l'entrée par défaut.

Mais pourquoi ne pas avoir utiliser chmod ?

Que veux-tu dire par entrée par défaut? De ce que j'ai compris, l'option -d permet l'héritage des ACL pour les nouveaux fichiers/dossiers crées. Mais les fichiers existants sont exclus d’où ma question de base, j'ai mis un peu de temps à comprendre que cette option ajoute les ACL aux dossiers et tous nouveaux fichiers/dossiers mais pas aux fichiers existants. A vrai dire je n'ai pas vraiment compris le manuel mais c'est ce que je constate de mes essais. Donc si c'est possible en une seule ligne plutôt que 2, je veux bien ne serait-ce que pour mieux comprendre le fonctionnement de cette option.

Jusqu'alors je changeais le groupe et j'utilisais le setgid +s ainsi que les ACL. Mais je me suis aperçu que je pouvais le faire uniquement avec les ACL et ça m'évite de toucher aux permissions et user/group de base.

C'est pour un serveur. J'ai plusieurs sauvegardes Borg que je monte en stockage externe local dans Nextcloud et que je récupère sur mon PC. Nextcloud a besoin des droits pour synchroniser ces sauvegardes. Ça fonctionne bien. Peut-être y-a-t-il plus simple genre avec rsync mais rsync ne se déclenche pas seul sauf à utiliser inotify éventuellement avec incron mais je ne l'ai jamais utilisé.
Si tu as d'autres suggestions, je suis preneur.

Hors ligne

#5 Le 20/12/2023, à 00:36

jplemoine

Re : [Résolu]ACL sur fichiers déjà existants d'un dossier

Si tu as une solution qui fonctionne (info que je n'avais pas ou que j'ai zappé) : garde celle-là...


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Déconnecté jusqu’à nouvel ordre

Hors ligne