Aha, isso acontece:
sudo -H -u www-data namei /my/long/symlink/chain
onde www-data
é o usuário que estou tentando depurar
Estou puxando meu cabelo aqui. Eu recebo erros de permissão quando tenho um processo em execução como root, gerando um subprocesso como www-data, que acessa um diretório que pertence a root, com uma subpasta pertencente a www-data, que possui um symink para um dir que pertence a um usuário no grupo www-data, que então tem .... VOCÊ RECEBE A IDÉIA. Como diabos eu sei onde ele falha nesta cadeia impossivelmente complexa? Tudo que recebo é Permissão negada
Sem ficarmos atolados nos detalhes dessa situação em particular, como alguém começa a depurar um problema como esse no unix?
Quero apenas dizer
debug_permissions.sh www-data /my/long/symlink/chain
e eu quero que ele passe e me diga onde está o ponto terminal (onde www-data não tem permissões)
Eu sei que existe uma ferramenta %código% mas isso não é muito útil porque não me deixa correr como outro usuário (ou pelo menos eu não sei como)
Se eu correr %código% Eu recebo Esta conta não está disponível no momento.
Eu quero ser capaz de "me tornar" www-data e "cd" para os dirs e ver onde eu não consigo ver as coisas. Mas isso não me deixa fazer isso e não quero criar um novo usuário apenas para fazer isso.
Aha, isso acontece:
sudo -H -u www-data namei /my/long/symlink/chain
onde www-data
é o usuário que estou tentando depurar
Tags debugging permissions