Commandes Linux : getfacl

GETFACL

Installé avec le paquet acl
Voir aussi : setfacl

 

Afficher la version de la commande getfacl

getfacl --version

ou

apt-cache policy acl

 

 

Afficher les ACL sur un fichier/dossier

getfacl fichiers|dossiers

Rien n’empêche de fournir plusieurs dossiers ou fichiers en arguments. Par contre, il faut rester cohérent sur les chemins de ces derniers : uniquement des chemins relatifs ou uniquement des chemins absolus, dans le cas où une restauration est envisagée.
ex :

# getfacl file1.txt file2.sh
# file: file1.txt
# owner: adminsys
# group: adminsys
user::rw-
group::r--
other::r--

# file: file2.sh
# owner: root
# group: root
user::rwx
user:adminsys:rwx
group::r--
group:adminsys:rw-
mask::rwx
other::r--

 

Afficher les ACL sur un fichier/dossier sous forme de tableau

getfacl -t fichiers|dossiers

ex :

# getfacl -t file1.txt file2.sh
# file: file1.txt
USER   adminsys  rw-     
GROUP  adminsys  r--     
other            r--     

# file: file2.sh
USER   root      rwx     
user   adminsys  rwx     
GROUP  root      r--     
group  adminsys  rw-     
mask             rwx     
other            r--

 

Afficher les ACL sur un fichier/dossier au format numérique

getfacl -n fichiers|dossiers

ex :

# getfacl -n file1.txt file2.sh
# file: file1.txt
# owner: 1000
# group: 1000
user::rw-
group::r--
other::r--

# file: file2.sh
# owner: 0
# group: 0
user::rwx
user:1000:rwx
group::r--
group:1000:rw-
mask::rwx
other::r--

 

Afficher les ACL récursivement sur un dossier

getfacl -R dossiers

Rien n’empêche de fournir plusieurs dossiers en arguments. Par contre, il faut rester cohérent sur les chemins de ces derniers : uniquement des chemins relatifs ou uniquement des chemins absolus, dans le cas où une restauration est envisagée.

 

Sauvegarder les permissions d’une arborescence de dossiers :

getfacl -R dossier > filename

ex :

# getfacl -R test/ > /home/adminsys/backupacl.acl

Sauvegardera les ACL du répertoire test où chaque élément sera identifié par un chemin relatif à test (ex : test/file.txt)

# file: test/
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

# file: test//file.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--

La restauration se fera donc dans le répertoire contenant le dossier test :
setfacl --restore=/home/adminsys/backupacl.acl

# getfacl -R /home/adminsys/test/ > /home/adminsys/backupacl.acl
getfacl : suppression du premier « / » des noms de chemins absolus

Sauvegardera les ACL du répertoire test où chaque élément sera identifié par un chemin relatif à la racine, le “/” initial étant retiré (ex : home/adminsys/file.txt)

# file: home/adminsys/test/
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

# file: home/adminsys/test//file.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--

Il faudra donc se déplacer à la racine pour la restauration :
(cd / ; setfacl --restore=/home/adminsys/backupacl.acl)

getfacl -Rp dossier > filename

ex :

# getfacl -Rp /home/adminsys/test/ > /home/adminsys/backupacl.acl

Sauvegardera les ACL du répertoire test où chaque élément sera identifié par un chemin absolu, le “/” initial étant maintenu (ex : /home/adminsys/file.txt)

# file: /home/adminsys/test/
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

# file: /home/adminsys/test//file.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--

Il ne sera donc pas nécessaire de se déplacer à la racine pour la restauration (même si cela rien ne l’empêche):
setfacl --restore=/home/adminsys/backupacl.acl

Fermer le menu
%d blogueurs aiment cette page :