Задание Cron для перезапуска Apache

Ubuntu Server 12.04. Я использую:

sudo crontab -e
* * * * * root /etc/init.d/apache2 restart > /dev/null 2>&1
sudo restart cron

И это не работает. Как это исправить? В Google так много документов, мне нужен один «верный путь».

1
задан 17 April 2013 в 15:46

3 ответа

Я предполагаю, что Вы вышли из вкладки крона после 2-го оператора. Та третья строка не будет работать в crontab. Крон должен перезагрузить себя.

проблема с Вашей вкладкой крона - то, что у Вас есть она набор для выполнения каждую минуту каждого часа каждого дневного ect. Это, что * средства, все опции.

Представление это в coumn формате

` m - h  dom mon dow    command

* *   *   *   *       root /etc/init.d/apache2 restart > /dev/null 2>&1

Вам нужно

0  1  * * * root /etc/init.d/apache2 restart > /dev/null 2>&1

, Это - 0th минута 1-го часа каждый день.

7
ответ дан 17 April 2013 в 15:46

Апач перезапуска является плохой идеей, возможно, можно ли просто перезагрузить? Или проверьте апачское состояние и перезапуск, если апач снижается.

#!/usr/bin/env python
import urllib2
import commands
from subprocess import Popen

ip = '127.0.0.1'
try:
  link = urllib2.urlopen('http://%s' % ip).code
  print link
except urllib2.HTTPError as e:
  print e.code
except urllib2.URLError:
  Popen(['invoke-rc.d','apache2','restart'])

и задание крона будет

*/5 * * * * restart_apache.py

И в первую очередь, когда Вы хотите перезапустить апача в сценариях, необходимо проверить конфигурационный файл на наличие ошибок.

#!/usr/bin/env python
import re
from subprocess import check_output, call

def is_config_ok():
    if re.findall('OK',check_output('apache2ctl configtest', shell=True)):
        return 1
    else:
        return 0

if __name__ == "__main__":
    if is_config_ok():
        call('invoke-rc.d apache2 restart', shell=True)
    else:
        print "error in config"
4
ответ дан 17 April 2013 в 15:46

Для становления более знакомыми с crontab синхронизирующие команды, Вы могли попробовать Песочница Крона .

параметры Времени/даты входят, и список будущего времени выполнения выходит.

0
ответ дан 17 April 2013 в 15:46

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

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