Cron не работал с определенной даты [закрыт]

На моем сервере не выполнялись задания cron с 25 марта, хотя он работал до этого дня и ничего не изменилось.
Версия ОС - Ubuntu 8.04LTS.

Сначала я перезапустил cron и проверил процессы.

$ sudo /etc/init.d/cron restart
 * Restarting periodic command scheduler crond
   ...done

$ ps aux | grep cron
root     14893  0.0  0.0  19640   908 ?        Ss   14:50   0:00 /usr/sbin/cron
user     16144  0.0  0.0   4972   844 pts/0    R+   14:50   0:00 grep cron

$ pgrep cron
14893

Кажется, что процесс cron запущен, но когда я проверил статус:

$ /etc/init.d/cron status
 * Usage: /etc/init.d/cron {start|stop|restart|reload|force-reload}

Я думаю, что-то не так.

Я проверил системный журнал

$ less /var/log/syslog | grep CRON

Mar 25 07:50:01 mail /USR/SBIN/CRON[12406]: (user) CMD (/home/user/public_html/rails_app/current/script/runner -e production "NewsRelease.send_unnoticed_mails" >> /home/user/public_html/rails_app/current/log/cron.log 2>&1)
Mar 25 07:50:01 mail /USR/SBIN/CRON[12409]: (user) CMD (/home/user/public_html/rails_app/current/script/runner -e production "Link.send_unnoticed_mails" >> /home/user/public_html/rails_app/current/log/cron.log 2>&1)
Apr  7 11:47:19 mail /usr/sbin/cron[13954]: (CRON) INFO (pidfile fd = 3)
Apr  7 11:47:19 mail /usr/sbin/cron[13955]: (CRON) STARTUP (fork ok)
Apr  7 11:47:19 mail /usr/sbin/cron[13955]: (CRON) INFO (Skipping @reboot jobs -- not system startup)

Журналы после 7 апреля являются журналами, когда я запускаю команды для cron вручную.
Следовательно, cron не запускается с 25 марта.

Мой файл crontab находится ниже. Он выполняет методы rails и ruby. Эти задания успешно выполнялись до 25 марта.

# Begin Whenever generated tasks for: rails_app

PATH=/usr/loca/sbin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
50 7 * * * /home/user/public_html/rails_app/current/script/runner -e production "Link.send_unnoticed_mails" >> /home/user/public_html/rails_app/current/log/cron.log 2>&1

0 5 * * * /home/user/mysql_backup.sh >> /home/user/public_html/rails_app/current/log/cron.log 2>&1

0,15,30,45 * * * * /home/user/public_html/rails_app/current/script/runner -e production "Tweet.post_tweet_at" >> /home/user/public_html/rails_app/current/log/cron.log 2>&1

# End Whenever generated tasks for: rails_app
0
задан 7 April 2017 в 01:32

1 ответ

Если я прочитал комментарии правильно, Вы ищете временное приспособление, в то время как Вы получаете новый сервер, увеличивающий поддерживаемую ОС и выполнение. В этом случае Вы могли бы попробовать следующий

, Создают сценарий, который выполнит бесконечный цикл для совершения вызовов вместо того, чтобы пытаться закрепить крон на очень устаревшей ОС. Что-то вроде этого должно сделать.

#!/bin/bash

while true
do
    time=$(date +%H:%M)
    hr=$(cut -f1 -d: <<< "$time")
    min=$(cut -f2 -d: <<< "$time")

    if [ "$hr" == "07"] && [ "$min" == "50" ]; then
        #run something at 7:50am
    fi

    if [ "$hr" == "05" ] && [ "$min" == "00" ]; then
        #run something at 5am
    fi

    if [ "$((min % 15))" == "0" ]; then
        #run something every quarter hour
    fi

    sleep 60
done

Затем, конечно, существует задача выполнения этого во время начальной загрузки. Мои 8,04 дней долго проходят, и я не могу сказать, что работало тогда. Смотрите на это сообщение , хотя, и видят, получает ли это Вас, где Вы хотите быть.

3
ответ дан 3 November 2019 в 12:15

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

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