Há uma maneira fácil de fazer backup e restaurar permissões e propriedades de uma árvore de diretórios usando as ferramentas ACL. Ele funciona mesmo se você não tiver ACLs ativadas no sistema de arquivos.
getfacl -R >saved-permissions
setfacl --restore=saved-permissions
A maioria dos problemas de permissão fará com que uma mensagem de erro "permissão negada" apareça em algum lugar, seja no console ou em algum arquivo de log.
Uma ferramenta poderosa para investigar problemas de acesso a arquivos é strace
. Mostra as chamadas do sistema feitas por um processo. A saída pode ser difícil de entender, mas é relativamente fácil ver quais arquivos o programa está tentando acessar e por que ele pode ou não encontrar o que deseja. Exemplos de uso:
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