No Fexora Server 32, novos cron jobs não aparecem com systemctl list-timers --all

No Fexora Server 32, novos cron jobs não aparecem com systemctl list-timers --all

Acabei de colocar um novo servidor online e configurei-o da mesma forma que o antigo em relação ao cron, mas os trabalhos não estão em execução. Então, analisei a configuração com cuidado e verifiquei se o cron atual funciona da mesma forma que o antigo. Sim, parece que sim!

Como é um sistema do tipo "systemd", executei o comando apropriado para ver o que ele acha que está programado e aqui está o que obtive:

# systemctl list-timers --all
NEXT                        LEFT          LAST                        PASSED     UNIT                         ACTIVATES
Sun 2020-08-16 15:15:55 PDT 5min left     Sun 2020-08-16 14:15:54 PDT 54min ago  dnf-makecache.timer          dnf-makecache.service
Sun 2020-08-16 20:57:26 PDT 5h 47min left Sat 2020-08-15 20:57:26 PDT 18h ago    systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
Mon 2020-08-17 00:00:00 PDT 8h left       Mon 2020-08-10 00:00:00 PDT 6 days ago fstrim.timer                 fstrim.service
Mon 2020-08-17 00:00:00 PDT 8h left       Sun 2020-08-16 00:00:01 PDT 15h ago    mlocate-updatedb.timer       mlocate-updatedb.service
Mon 2020-08-17 00:00:00 PDT 8h left       Sun 2020-08-16 00:00:01 PDT 15h ago    unbound-anchor.timer         unbound-anchor.service

5 timers listed.

Está tudo muito bem, mas não está mostrando minhas adições específicas - nenhuma delas. Então, fiz o que achei correto, corri systemctl reload crond.servicee obtive o mesmo resultado. Então reiniciei e ainda obtive a mesma saída!

Minhas adições são:

  1. cron.d: local - um conjunto de coisas locais que não estão nas programações habituais
  2. cron.daily: backup.daily logrotate mailbox_check
  3. cron.mensalmente; backup.mensalmente e;
  4. cron.semanalmente; backup.semanalmente

Estou totalmente preparado para acreditar que fiz algo errado na configuração, ou talvez haja algum outro problema sobre o motivo pelo qual ACHO que eles não foram executados, mas foram. Mas não estou vendo as outras entradas na systemctl list-timersaída s que foram colocadas lá por pacotes instalados que estavam lá antes mesmo de eu começar a mexer com minhas próprias adições.

Talvez o problema seja minha falta de familiaridade com a saída do cronômetro de lista? Não deveria mostrar esses outros empregos também?

Responder1

Tal como acontece com muitas coisas no Linux, há mais de uma maneira de fazer as coisas. Cron e systemd timer são maneiras diferentes de fazer coisas semelhantes ao cron, assim como upstart, init.d e systemd são três sistemas init diferentes.

Muitos cron jobs pertencem a umusuário específico, para que você possa crontab -lser o usuário específico ou crontab -u username -lverificar os cron jobs de outro usuário como root.

Você também tem diariamente, semanalmente, mensalmente e assim por diante

Embora você possa se aprofundar em cada um deles, eles são uma série de arquivos, então

então ls -la /etc/cron.*lhe daria uma visão geral

geek@heckate_router:~$ ls -la /etc/cron.*
/etc/cron.d:
total 28
drwxr-xr-x   2 root root  4096 Jan 22  2020 .
drwxr-xr-x 117 root root 12288 Aug 12 06:54 ..
-rw-r--r--   1 root root   589 Jun 26  2018 mdadm
-rw-r--r--   1 root root   102 Nov 16  2017 .placeholder
-rw-r--r--   1 root root   190 Jul 25  2018 popularity-contest

/etc/cron.daily:
total 76
drwxr-xr-x   2 root root  4096 Aug 12 06:54 .
drwxr-xr-x 117 root root 12288 Aug 12 06:54 ..
-rwxr-xr-x   1 root root   376 Nov 20  2017 apport

.....


/etc/cron.hourly:
total 20
drwxr-xr-x   2 root root  4096 Jul 25  2018 .
drwxr-xr-x 117 root root 12288 Aug 12 06:54 ..
-rw-r--r--   1 root root   102 Nov 16  2017 .placeholder

/etc/cron.monthly:
total 20
drwxr-xr-x   2 root root  4096 Nov 18  2018 .
drwxr-xr-x 117 root root 12288 Aug 12 06:54 ..
-rw-r--r--   1 root root   102 Nov 16  2017 .placeholder

/etc/cron.weekly:
total 28
drwxr-xr-x   2 root root  4096 May 30  2019 .
drwxr-xr-x 117 root root 12288 Aug 12 06:54 ..
-rwxr-xr-x   1 root root   723 Apr  7  2018 man-db
-rw-r--r--   1 root root   102 Nov 16  2017 .placeholder
-rwxr-xr-x   1 root root   211 Jun 27  2018 update-notifier-common

Convertendo estes parascripts de temporizador do systemdestá fora do escopo desta resposta, mas eles estãonãoo mesmo que um cron job clássico.

informação relacionada