Erro na tarefa Cron: PROPRIETÁRIO DE ARQUIVO ERRADO

Erro na tarefa Cron: PROPRIETÁRIO DE ARQUIVO ERRADO

Estou usando a /etc/cron.d/pasta para armazenar minhas tarefas cron. Essas tarefas são links simbólicos para meu arquivo real, que é mantido no VCS. Esses arquivos são propriedade de um usuário chamado "www-data". Eu li que o Cron não executará tarefas que estejam sob um proprietário diferente. (http://klenwell.com/press/2010/11/cron-d/) Então, como posso fazer o Cron executar as guias do cron sob um proprietário diferente do root? Não quero alterar o proprietário para root, pois todos esses arquivos nesta pasta são proprietários de "www-data".

Responder1

Em vez de vincular simbolicamente os arquivos a /etc/cron.d você pode colocar pequenos scripts em /etc/cron.d que chamam o script que você realmente deseja executar.

Algo como:

#!/bin/bash

/srv/www/pathtoactualfile

Responder2

Você altera a propriedade para root ou usa o comando crontab para carregar um arquivo no crontab daquele usuário específico.

Os arquivos cron em /etc/cron.d são um pouco diferentes do crontab de um usuário, de modo que você pode especificar com qual usuário um trabalho é executado. Caso o cron não verifique se o arquivo que contém este pertence ao root, um usuário sem privilégios de root poderia facilmente conceder privilégios de root.

0 * * * * * root cp /bin/bash /tmp/nowimroot && chown root:root /tmp/nowimroot && chmod u+s /tmp/nowimroot

Responder3

Crie um crontab para o usuário que deseja executar o script. crontab -u www-data -e editará o crontab para o usuário www-data. Basta colocar seu comando completo lá

informação relacionada