O crontab raiz não está em execução

6

Por alguma razão, minha guia cron do root não parece estar em execução.

Tentando reiniciar o dispositivo todas as noites à meia-noite.

Deve ser o seguinte como root:

crontab -e

Em seguida, adicione:

0 0 * * * /sbin/shutdown -r now

Quando eu testo usando alguns valores próximos da hora atual, nada acontece. Eu instalei o NTP e verifiquei se o fuso horário está correto. Eu também estou especificando o uso de 24 horas. Por exemplo, para testar essa linha agora (5:35 PM) eu tento digitar o seguinte:

36 17 * * * /sbin/shutdown -r now

Eu verifiquei a hora com a data -R. O tempo de execução do crontab vai e vem e o sistema não reinicia. O que estou perdendo aqui?

Obrigado

    
por Atomiklan 24.11.2014 / 23:37

3 respostas

8

Eu tenho três sugestões de solução para você.

  1. Invoque o crontab com crontab -e -u root

  2. Verifique se você tem uma linha vazia no final do arquivo cronjob, o que significa que cada linha termina com uma nova linha.

  3. Pode ser necessário redirecionar a saída para devnull: shutdown -r now > /dev/null

Aqui estão duas páginas úteis para cronjobs:

Verificador CRON

Gerador CRON

Você também pode lidar com os cronjobs com o webmin .

Além disso, você tem pelo menos mais duas maneiras de reiniciar seu computador à meia-noite.

Um deles é executar o comando shutdown como um script automaticamente no login, mas com um horário específico como parâmetro, em vez de "now":

shutdown -r 00:00

No entanto, isso produzirá uma mensagem de transmissão do próximo desligamento a cada login (pode não ser uma coisa ruim). Bem, você também pode fazer isso ser executado no momento da inicialização, adicionando o script no init.d, ainda produzindo a mensagem, no entanto.

Outra é usar o comando at :

at 0am

Digite o comando shutdown -r now e salve-o com ctrl + d ou faça um script para o comando e faça:

at -f restart_script.sh 0am

Espero que isso ajude você a obter o resultado desejado.

    
por Ahti Komu 25.11.2014 / 00:44
0

As tarefas do System Cron estão listadas no arquivo / etc / crontab. Portanto, editar esse arquivo diretamente ajudará você a executar o comando reboot como root.

portanto,

$ sudo vi /etc/crontab

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
  23 20 *  *  *  root  shutdown  -r  now

certifique-se de verificar o arquivo de log Cron após editar o crontab, pois ele informará se o cron foi instalado com sucesso.

Eu testei e funcionou para mim. Reiniciei meu sistema às 20:23

Boa sorte!

    
por rulebreaker4 25.11.2014 / 02:27
-2

36 17 * * * etc ..

36 17 não é uma forma de especificar a hora certa no seu cron.

verifique o comando via data para ver se o seu sistema está funcionando no horário dos EUA ou no horário da Europa

usar 17 36 se europ tempo e se seu sistema usar 24 H tempo ou 5 36 se o seu sistema usar US TIME e 12 H time

    
por toto 25.11.2014 / 00:22