Ist es Dir auch schon mal passiert: im falschen Ordner, zum Beispiel /var ein "chmod xxx -R *" abgeschickt... dann ist guter Rat teuer, denn wie bekommt man die Rechte wieder passend hergestellt?

Helfen können 2 praktische Tools:

  • getfacl - Sichert Berechtigungen in eine Datei
  • setfacl - Stellt Berechtigungen wieder her

Wir müssen nun also mit getfacl passende Berechtigungen besorgen. Das kann man beispielsweise auf einem ähnlichen System erledigen, oder man stellt ein Backup des Ordners in einen anderen Ordner wieder her und liest dort die Berechtigungen mit getfacl aus.

In diesem Beispiel habe ich ein Restore von /var nach /tmp/restore/var durchgeführt, dort die Berechtigungen in die Datei "permissons_var" gespeichert und diese dann in /var mit setfacl wiederhergestellt.

getfacl -R /tmp/restore/var > permissons_var
cp permissons_var /var
cd /var
setfacl --restore=permissons_var

Zur Vorbeugung kann man einen cronjob anlegen, der die Berechtigungen regelmäßig in eine Datei sichert. So kann man im Fehlerfall auf die zuvor gespeicherten Berechtigungen zugreifen.

@weekly /usr/bin/nice -19 /usr/bin/getfacl -R / | /bin/bzip2 -c > /backup_partition/acl_backups/permissions_`date +"\%Y-\%m-\%d"`.bz2