4 votes

Annulation de chmod 777

Parfois, en désespoir de cause, pour vérifier si mon problème n'est pas celui de la permission, je le fais :

sudo chmod -R 777 mydir/

Dans la plupart des cas, cela ne sert à rien, et maintenant j'ai deux problèmes ;)

Dossiers à l'intérieur mydir/ avaient des permissions et des propriétaires différents, et je dois maintenant les restaurer dans leur état d'origine.

Existe-t-il une méthode intelligente pour restaurer les autorisations de manière récursive, à l'exception de la création d'une copie de sauvegarde ? Par exemple

command_to_save_the_permissions_somewhere mydir/
chmod -R 777 mydir/
command_to_restore_the_permissions_from_somewhere mydir/

BTW, des conseils sur le débogage des problèmes d'autorisation ?

4voto

Il existe un moyen simple de sauvegarder et de restaurer les permissions et les propriétaires d'une arborescence de répertoires à l'aide des outils ACL. Cette méthode fonctionne même si les ACL ne sont pas activées sur le système de fichiers.

getfacl -R >saved-permissions
setfacl --restore=saved-permissions

La plupart des problèmes de permission entraîneront l'apparition d'un message d'erreur "permission refusée", soit dans la console, soit dans un fichier journal.

Un outil puissant pour enquêter sur les problèmes d'accès aux fichiers est strace . Il indique les appels système effectués par un processus. La sortie peut être difficile à comprendre, mais il est relativement facile de voir à quels fichiers le programme essaie d'accéder et pourquoi il peut ou ne peut pas trouver ce qu'il veut. Exemples d'utilisation :

strace -s9999 -o myprogram.strace myprogram  # trace myprogram
strace -s9999 -fF ...                        # also trace subprocesses
strace -s9999 -p12345                        # connect to running process by PID
strace -s9999 -efile ...                     # only show filesystem calls
strace -eaccess,open,stat,lstat              # only show common file access calls

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X