trabalho Cron trabalhando, mas crontab -l diz que não há empregos

3

Estou executando o Raspbian em um Pi e instalei o cron para agendar um trabalho. Eu escrevi um script Python e configurei-o para ser executado a cada 5 minutos. O trabalho está acontecendo a cada 5 minutos, sem problemas, mas quando executo crontab -l como root e pi , ele diz que não há trabalhos. Quando executo crontab -e como root e como pi , eles estão em branco.

Eu sinceramente não consigo lembrar os detalhes exatos de quando eu configurei o trabalho. Eu sei que escrevi uma linha em um documento que foi formatado como crontab e tenho certeza que foi feito como root .

Eu descobri isso, pois adicionaria mais alguns trabalhos e gostaria de localizar o outro que fiz antes de continuar adicionando mais.

    
por DonGroh69 11.05.2015 / 07:06

3 respostas

5

Existem duas listas de tarefas agendadas (crontabs).

Cada usuário (incluindo o root) tem um crontab por usuário, que pode listar com crontab -l e editar com crontab -e . A implementação usual do Linux armazena esses arquivos em /var/spool/cron/crontabs . Você não deve modificar esses arquivos diretamente (execute crontab -e como o usuário), mas é seguro listá-los para ver o que está dentro. Você precisa ser root para listá-los.

Existe também um crontab do sistema. Este é mantido pelo root, e os trabalhos podem ser executados como qualquer usuário. O crontab do sistema consiste em /etc/crontab e, em muitos sistemas, arquivos em /etc/cron.d . Esses arquivos têm uma coluna adicional: após os 5 campos de data / hora, eles têm um campo "user", que é o usuário com o qual o job será executado. É comum configurar /etc/crontab para executar scripts dos diretórios /etc/cron.hourly , /etc/cron.daily , etc. e é assim que é feito em Raspbian.

Então, olhe em todos esses lugares: /var/spool/cron/crontabs/* (você precisa ser root para este), /etc/crontab , /etc/cron.* .

Você também pode obter informações nos registros do sistema. Eles não informam onde o trabalho foi listado, mas informam exatamente qual comando está sendo executado, para que você possa procurar pelo texto do comando. Por exemplo, esta é a entrada que executa comandos em /etc/cron.hourly a cada hora:

May 11 07:17:01 darkstar CRON[2480]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
    
por 12.05.2015 / 02:48
0

Podem ser os trabalhos fornecidos por outros usuários Tente listar como

ls -lR /etc/cron*
    
por 11.05.2015 / 07:12
0

As entradas cron globais são geralmente listadas em /etc/crontab . Para detalhes sobre os crontabs e seus locais de arquivos, tente man cron e man crontab .

    
por 11.05.2015 / 08:07