Назад | Перейти на главную страницу

Как правильно настроить «анакрон»? (Ubuntu 9.10, 10.04)

Я использую Ubuntu 9.10 и 10.04 на серверах MediaTemple (ve).

На обоих анакрон установка не работает, ... и они были сломаны с тех пор, как я впервые установил Ubuntu. Это привлекло мое внимание только недавно, когда я понял, что мои файлы журналов не меняются.

Я надеюсь, что кто-то, у кого работает Anacron, поможет диагностировать проблему и предложить решение.

Вот это /etc/cron.d/anacron ... Эта часть работает правильно: каждое утро в 7:30, cron выполняет эту команду для запуска анакрона.

# /etc/cron.d/anacron: crontab entries for the anacron package

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

30 7    * * *   root    test -x /etc/init.d/anacron && /etc/init.d/anacron start >/dev/null

Проблема в том, что /etc/init.d/anacron start не удается:

# /etc/init.d/anacron start >/dev/null
start: Unknown job: anacron

Обратите внимание, что /etc/init.d/anacron - это символическая ссылка на / lib / init / upstart-job:

# ls -l /etc/init.d/anacron
lrwxrwxrwx 1 root root 21 Jan 12  2010 /etc/init.d/anacron -> /lib/init/upstart-job

Теперь я в тупике. У кого-нибудь есть предложения, как это исправить?

Взгляните в / var / журнал и посмотрите, меняются ли ваши файлы журналов (в отличие от неограниченного увеличения). Если они являются будучи повернутым, то у вас наверняка есть рабочий анакрон, поэтому, пожалуйста, проверьте свои настройки и дайте мне знать, чем они отличаются от моих.

Заранее спасибо, ...

Upstart фактически использует файлы конфигурации в /etc/init для каждой услуги, а не /etc/init.d. Я предполагаю, что ссылки /etc/init.d предназначены для сохранения совместимости с sysvinit. Вот выскочка руководство по началу работы что объясняет это.

У меня нет системы Ubuntu, поэтому я не могу проверить содержимое /etc/init/anacron.conf, но я подозреваю, что это может быть просто exec anacron -s. Регистрироваться /etc/init.removed/ и посмотрите, есть ли там anacron.conf, который был удален в процессе обновления. Возможно, вы также сможете переустановить anacron, чтобы исправить это.

Ubuntu 10.04 /etc/cron.d/anacron:

# /etc/cron.d/anacron: crontab entries for the anacron package

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

#30 7    * * *   root   test -x /etc/init.d/anacron && /usr/sbin/invoke-rc.d anacron start >/dev/null
30 7    * * *   root    start -q anacron || :

/etc/init.d/anacron start:

# /etc/init.d/anacron start
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service anacron start

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start anacron

# ls -al /etc/init.d/anacron 
lrwxrwxrwx 1 root root 21 2011-01-10 19:05 /etc/init.d/anacron -> /lib/init/upstart-job
anacron start/running, process 5446

/etc/cron.daily/logrotate можно запустить без anacron, если / usr / sbin / anacron не существует (/ etc / crontab):

25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )