crontab do sistema vs. Crontab do usuário para desligar o computador

4

Estou tentando desligar meu pc às 2 da manhã uma vez por semana.

Se eu usar o usuário crontab da raiz (sudo crontab -e)

30 2 * * 3 shutdown -h now

o desligamento não será executado.

No entanto, se eu colocar o mesmo comando para a raiz no crontab do sistema (sudo vim / etc / crontab), o pc será desligado:

30 2    * * 3   root    shutdown -h now

Qual é a diferença? Ambas as vezes root vai desligar meu pc. Por que isso só funciona se estiver no crontab do sistema?

    
por Philippe 01.02.2013 / 19:45

1 resposta

4

Em teoria, deveria funcionar. Eu acho que você vai achar a diferença no PATH. Sua versão pode ser diferente, mas no meu / etc / crontab há uma linha PATH no topo que inclui o / sbin (e o meu desligamento está em / sbin).

Eu acho que você vai descobrir que quando o CRON é executado para o usuário root, ele não tem um caminho associado a ele, então ele não está funcionando. Altere o comando para

30 2    * * 3   root    /sbin/shutdown -h now

E eu suspeito que isso resolverá seu problema.

    
por 01.02.2013 / 19:49