Как я могу узнать, работает ли моя почасовая работа cron?

Вы можете использовать devilspie, чтобы все открытые окна открывались в определенном рабочем пространстве. Это относительно простое приложение для использования. Что касается второй половины вопроса, у меня нет ответа.

sudo apt-get install devilspie
22
задан 12 June 2012 в 05:55

35 ответов

Учитывая, что я добавил скрипт clearme.sh в /etc/cron.hourly/

Просто отфильтруйте задачи CRON в терминале с помощью мощных egrep и awk:

$ cat /var/log/syslog | egrep clearme | awk "{ print $1 }" > ~/Desktop/cronlog.txt

Выход будет выглядят так:

Jan 14 15:20:01 markets-dev CRON[10089]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 15:40:01 markets-dev CRON[18042]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 16:00:01 markets-dev CRON[22817]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 16:20:01 markets-dev CRON[28183]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 16:40:01 markets-dev CRON[411]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 17:00:01 markets-dev CRON[5442]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 17:20:01 markets-dev CRON[11935]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)

Чтобы объяснить все шаг за шагом:

  1. cat / var / log / syslog - напечатайте мне Системный журнал
  2. egrep clearme - но только выберите строки, содержащие текстовое слияние
  3. awk "{print $ 1}" - напечатайте мне ту строку, которая содержит текст clearme
  4. > ~ / Desktop / cronlog.txt - вывод результатов в файл cronlog.txt, расположенный в каталоге Desktop.

Четвертый шаг является необязательным. Он просто распечатает результаты в терминале вместо файла.

1
ответ дан 10 August 2018 в 07:01

Вы должны посмотреть в файле журнала /var/log/syslog. Если cron запустился, у него будет строка типа:

Jun 11 19:09:01 penguin CRON[17376]: (root) CMD (  [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) ! -execdir fuser -s {} 2>/dev/null \; -delete)
Jun 11 19:17:01 penguin CRON[17799]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

. Советы по устранению неполадок см. В https://help.ubuntu.com/community/CronHowto#Troubleshooting_and_Common_Problems

31
ответ дан 10 August 2018 в 07:01

Учитывая, что я добавил скрипт clearme.sh в /etc/cron.hourly/

Просто отфильтруйте задачи CRON в терминале с помощью мощных egrep и awk:

$ cat /var/log/syslog | egrep clearme | awk "{ print $1 }" > ~/Desktop/cronlog.txt

Выход будет выглядят так:

Jan 14 15:20:01 markets-dev CRON[10089]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 15:40:01 markets-dev CRON[18042]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 16:00:01 markets-dev CRON[22817]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 16:20:01 markets-dev CRON[28183]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 16:40:01 markets-dev CRON[411]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 17:00:01 markets-dev CRON[5442]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)
Jan 14 17:20:01 markets-dev CRON[11935]: (dminca) CMD (root /etc/cron.hourly/clearme.sh)

Чтобы объяснить все шаг за шагом:

  1. cat / var / log / syslog - напечатайте мне Системный журнал
  2. egrep clearme - но только выберите строки, содержащие текстовое слияние
  3. awk "{print $ 1}" - напечатайте мне ту строку, которая содержит текст clearme
  4. > ~ / Desktop / cronlog.txt - вывод результатов в файл cronlog.txt, расположенный в каталоге Desktop.

Четвертый шаг является необязательным. Он просто распечатает результаты в терминале вместо файла.

1
ответ дан 18 August 2018 в 21:49

Вы должны посмотреть в файле журнала /var/log/syslog. Если cron запустился, у него будет строка типа:

Jun 11 19:09:01 penguin CRON[17376]: (root) CMD (  [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) ! -execdir fuser -s {} 2>/dev/null \; -delete)
Jun 11 19:17:01 penguin CRON[17799]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

. Советы по устранению неполадок см. В https://help.ubuntu.com/community/CronHowto#Troubleshooting_and_Common_Problems

31
ответ дан 18 August 2018 в 21:49
  • 1
    В Syslog нет ничего, и я не вижу причин, по которым он не смог бы с этой ссылкой :( – wilhil 12 June 2012 в 03:15
  • 2
    Если в syslog нет записей (grep -i cron /var/log/syslog /var/log/syslog.1), начните проверку, запущен ли демон cron: ps uww -C cron должен содержать строку с процессом. – Lekensteyn 12 June 2012 в 03:20
  • 3
    Извините за то, что вы вводите в заблуждение, для Cron в syslog есть желание, просто ничего, что связано с этой командой ... Я знаю, что некоторые задания запускаются как каждый час, я получаю новое оповещение по почте ... AFAIK, те, которые работают, являются от crontab, в cron.hourly нет ничего, что я пытаюсь получить – wilhil 12 June 2012 в 03:25

Попробуйте изменить первую строку вашего скрипта (интерпретатор) на:

#!/bin/bash

У меня также были проблемы в прошлом, с переменными окружения и проблемами PATH , После смены интерпретатора на bash мои проблемы исчезли.

2
ответ дан 18 August 2018 в 21:49

Другие вопросы по тегам:

Похожие вопросы: