Различие между использованием crontab и/etc/cron.hourly, ежедневно, еженедельно

df - ха

чтобы проверить, полны ли жесткие диски и кто-то не получил предупреждения

htop или вершина

проверять память и использование CPU не аномально высоко.

Кроме того, если поле не отвечает, я вхожу в клиент VMware и проверяю CPU/поршень оттуда.

12
задан 10 July 2009 в 01:42
8 ответов

Вы хотите использовать '-dir конфигурации' опция сообщить ему, где найти принятый сертификат (например, ~/.subversion по умолчанию).

Тем не менее я почти уверен, что Вы были бы более обеспеченным вызовом svnsync из сценария рычагов/постфиксации вместо этого, как предложено в другом месте. Затем Ваше зеркало всегда находится в синхронизации, а не в синхронизации с тем, где Ваше ведущее устройство было час назад.

4
ответ дан 2 December 2019 в 21:29

В системе Debian/Ubuntu крон daily|weekly|montly запускаются с основного crontab.

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
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 )

Также имейте в виду, что Вы, вероятно, могли поместить crontab фрагмент в/etc/cron.d/

Поскольку Вы видите, что нет ничего особенно специального об этой среде. По крайней мере, на Debian/Ubuntu все это выполняется как корневая учетная запись.

Когда я пишу, что сценарии крона в очень запускаются сценария, я всегда устанавливал свой ПУТЬ и другие переменные среды, которые я буду использовать, таким образом, я смогу быть уверен, что он будет работать правильно в любой среде.

16
ответ дан 2 December 2019 в 21:29

Мое первое произвольное предположение было бы проверкой Ваша ДОМАШНЯЯ переменная.

В моей системе Centos говорит человек 5 crontab:

Несколько переменных среды настраиваются автоматически кроном (8) демон. SHELL установлен на/bin/sh и LOGNAME и ДОМОЙ установлен от/etc/passwd строки владельца crontab.

Так, если бы Вы не указали иначе, crontab корня использовал бы/, поддерживают ДОМОЙ. Но в/etc/crontab (который является, куда/etc/cron.hourly выполняется от через части выполнения), ДОМОЙ установлен на / (и SHELL к/bin/bash вместо/bin/sh).

Я не знаю о svnsync, но подверсия действительно использует ˜/.subversion/каталог, так, чтобы мог зависеть от ДОМА.

3
ответ дан 2 December 2019 в 21:29

В моей системе RHEL 5.1 переменная окружения PATH установлена от/etc/crontab. Все это наверху является материалом, это питается в среду.

Если Вы перезапускаете крон, то в первый раз он работает (если от /etc/crontab или /var/spool/cron/$USER) это обратит внимание на него в/var/log/cron. Иначе это просто отметит, что cron.hourly работал

Мой crontab установлен на следующее:

01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

То, что Вы могли сделать, помещается что-то как следующее в/etc/cron.hourly:

env > /tmp/cron.env

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

3
ответ дан 2 December 2019 в 21:29

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

2
ответ дан 2 December 2019 в 21:29

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

2
ответ дан 2 December 2019 в 21:29

Не очень другой мобильность, в прошлый раз я проверил (в Debian), рекомендовалось поместить материал в cron.hourly (и другие) и не непосредственно в crontab, если Вы хотели создать пакет со своим материалом.

2
ответ дан 2 December 2019 в 21:29

Обычный общесистемный crontab - это crontab конкретного пользователя, и в нем есть поле имени пользователя, используемое в / etc / crontab .

Использование скриптов в ] / etc / cron. * (ежечасно, ежедневно, еженедельно, ежемесячно) - более чистый и простой способ (предотвращает распространенные синтаксические ошибки) настройки crontab для пользователя root , и этим занимается ] run-parts , которые запускают сценарии или программы в каталоге. Все эти правила по-прежнему определены в общесистемном crontab по умолчанию ( / etc / crontab ), так что это то же самое.

Когда задания cron обрабатываются run-parts , легче отлаживать, так как вы можете просто проверить, какие сценарии будут запускаться (еще не выполняя их):

sudo run-parts --report --test /etc/cron.daily
6
ответ дан 2 December 2019 в 21:29

Теги

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