легко включите или отключите крон

Это не образует мост между WAN и LAN, потому что это - две отдельных сети. В случае типичного маршрутизатора это служит шлюзом между теми двумя отдельными сетями. Это позволяет направлять и правила брандмауэра, которые будут использоваться для управления тем, какой трафик перемещен между этими двумя сетями. Так, будьте значением по умолчанию, WAN и LAN не соединены до маршрутизации или правила брандмауэра записан для образования моста двух интерфейсов. Однако WI-FI часто соединяется мостом с LAN для автоматического создания одной сети между двумя.

0
задан 25 November 2011 в 12:09
5 ответов

Официальный способ отключить некоторые задания cron для конкретного пользователя - это ввести crontab -e -u и поставить # в начале чтобы закомментировать.


ОБНОВЛЕНИЕ

Поскольку файл cron будет частью сценария оболочки.

Попробуйте следующее:

crontab -l -u shantanuo > shantanuo.cron
sed -i 's/^/#/' shantanuo.cron
crontab shantanuo.cron
rm -f shantanuo.cron
1
ответ дан 4 December 2019 в 11:19

Почему бы просто не использовать команду crontab -e или, если вы вошли в систему как root, crontab -e -u shantanu ?

1
ответ дан 4 December 2019 в 11:19

Это может работать. Но ...

Как сказано на предыдущих плакатах: Не делай этого. Используйте crontab -e . Прямое редактирование файлов может работать, но это не надежная практика. Ваш материал может сломаться в любой момент при обновлении задействованных компонентов. Кроме того, он не очень портативен, другие системы могут хранить файлы в другом месте. Это похоже на реализацию «printf» самостоятельно вместо использования стандартного iolib.

Так что не делайте этого таким образом.

edit: И если вам нужно сгенерировать crontab с помощью сценария оболочки, просто перенаправьте свой данные в crontab (он даже знает псевдо-файл '-'! Прочтите страницу руководства.)

4
ответ дан 4 December 2019 в 11:19

Это может работать или не работать в зависимости от того, какую операционную систему (и какую версию cron) вы используете. Проверяя некоторые поля Linux, их страница cron man говорит об этом

. Кроме того, cron каждую минуту проверяет, изменилось ли время модификации его каталога спула (или время модификации в / etc / crontab), и если оно изменилось, cron затем проверьте время модов на всех crontab и перезагрузите те, которые были изменены. Таким образом, cron не нужно перезапускать при изменении файла crontab. Обратите внимание, что команда crontab (1) обновляет время модификации каталога спула при каждом изменении crontab.

Таким образом, при обновлении mtime каталога / var / spool / cron cron будет проверять индивидуальный crontabs, чтобы увидеть, были ли они обновлены, и перечитайте их.

Если хотя бы мы посмотрим на коробку Solaris 10, это ' В справочной странице cron говорится, что этот

cron проверяет crontab или командные файлы только во время фазы инициализации собственного процесса и при запуске команды crontab или at. Это снижает накладные расходы на проверку наличия новых или измененных файлов через регулярные запланированные интервалы.

Таким образом, в системе Solaris 10 (и, возможно, в других) вам придется использовать команду crontab, чтобы изменить файлы и сообщить cron, что он должен перечитать их. crontab файлы.

s crontab файлы.

s crontab файлы.

0
ответ дан 4 December 2019 в 11:19

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

*/3 0 * * * [ ! -f /tmp/job.lock ] && /path/to/job

Итак, чтобы приостановить использование задания:

touch /tmp/job.lock

Перезапустите планирование в cron:

rm /tmp/job.lock

Прелесть этого состоит в том, что вы можете использовать разные файлы блокировки для разных заданий (или групп заданий, если все они используют одну и ту же блокировку. file), не беспокоясь о прерывании планирования или поломке cron из-за ошибок при редактировании (скриптом или вручную) crontab.

0
ответ дан 6 May 2020 в 10:33

Теги

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