O trabalho cron da raiz não pode ler o arquivo de / root /

1

Eu tenho um cron job no crontab do root definido assim:

0 1 * * * /usr/local/bin/tarsnap-backup-script > /tmp/tarsnapcron.txt 2> /tmp/tarsnapcron.err

O script é um script python que executa tarsnap , que lê a chave de /root/tarsnap.key . Essa chave é de propriedade de root e chmod 400.

Se eu executar o script a partir do bash shell, ele será executado sem erros. No entanto, no cron, recebo uma exceção do python impressa em tarsnapcron.err :

could not change directory to "/root": Permission denied

Qual é a diferença entre executar este script como root no bash e executá-lo a partir do crontab de root ? Por que o último não pode ler de /root ?

    
por growse 05.03.2014 / 12:57

1 resposta

1

Eu tive o mesmo problema e a solução foi conceder direitos de grupo raiz:

chmod 440 /root/backup.key

Depois disso, o cron conseguiu ler o arquivo e o script de backup foi executado sem problemas.

    
por 05.05.2015 / 16:17