Как я могу управлять своим crontab эффективно для предотвращения выпуска несколькими обновлениями многочисленными пользователями?

Вы - вопрос, является довольно общим, таким образом, я просто возьму немного удара в части NetBSD:

Веб-страница NetBSD vax списки портов поддерживали машины (такой как Ваш), многие могут использовать NetBSD 6.0.1, некоторые только поддерживаются в -current.

Это также указывает на VAXarchive, набор веб-сайта некоторая информация, которая могла бы помочь Вам далее. Это также указывает на vax порт OpenBSD (поддерживаемые машины включает Ваш Vaxstation 4000/90),

Наконец, оба из этих портов имеют списки рассылки: NetBSD довольно активен, OpenBSD не так.

Править: вот несколько исторических выпусков UNIX, которые могли бы представлять интерес...

2
15.02.2014, 22:22
2 ответа

Подверсия

Я подверг бы содержание crontab под управлением подверсией и только предоставил бы доступ этому пользователю через sudo. Конкретно я только предоставил бы людям доступ к команда через sudo это взяло бы голову от подверсии и установило бы ее как последний crontab для этого конкретного пользователя. Это предоставит Вам следующее:

  • Журнал аудита того, кто сделал что
  • Способность откатывать в предыдущий crontab файл, если проблема возникает
  • Изолируйте операторы от наличия слишком большого количества разрешения для этой специальной учетной записи

Это могло бы казаться чрезмерно сложным, но нет ничего также сложного с тем, что я описал, разбиваете ли Вы его в маленькие блоки.

MultiCron

Другой подход должен был бы использовать инструмент/сценарий, такой как MultiCron. Этот инструмент позволил бы Вам управлять crontab данными, внешними к crontab записи так, чтобы Вы могли лучше управлять, у кого/когда есть доступ к этим изменениям.

Пример Используя подверсию

Принятие Вы установили бы репозиторий SVN, Вы могли создать a sudo запись, которая позволила бы пользователям делать что-то вроде этого:

$ sudo deploy_app_cron.bash

Внутренности этого сценария могли сделать среди прочего это:

svn cat file:///home/saml/svnrepo/app_cron_data.txt | crontab -u saml -

Содержание файла app_cron_data.txt:

$ svn cat file:///home/saml/svnrepo/app_cron_data.txt
*/5 * * * * /path/to/job -with args"

Цикл использования в качестве примера

Таким образом, Усера хочет обновить crontab запись. Они сделали бы следующее для запуска:

$ cd $HOME/somedir
$ svn co file:///home/saml/svnrepo/ mywksp
A    mywksp/app_cron_data.txt
$ cd mywksp

Теперь они делают некоторые редактирования в crontab файл, app_cron_data.txt, и передайте их repo, когда они будут сделаны.

$ svn commit -m "some msg.." app_cron_data.txt

Для развертывания этих изменений, они выполнили это sudo команда:

$ sudo deploy_app_cron.bash

Ссылки

3
27.01.2020, 21:54
  • 1
    s/subversion/a / — для этого варианта использования даже RCS сделал бы, –  Gilles 'SO- stop being evil' 08.10.2013, 02:59
  • 2
    @slm:Use. Хорошо. Но я не могу понять то, под чем Вы подразумеваете take the head from subversion, and install it as the latest crontab for this particular user. Как sudo вовлечен в это? –  Jim 08.10.2013, 08:57
  • 3
    @Jim - видят обновления. –  slm♦ 09.10.2013, 16:05
  • 4
    @Jim - NP, я полагал, что Вы просто забыли, но я заметил, что Вы имели много Q и не имели так, я полагал, что напишу Вам. Спасибо за BTW всего хорошего Q они сохраняют сайт интересным 8-). Спасибо за то, что заняли время для принятия также. –  slm♦ 15.02.2014, 22:21
  • 5
    @slm:Thanks для указания. Я исправлю этого ASAP. Я также очень доволен этим SE и высоким качеством ответов, которые я получаю. –  Jim 15.02.2014, 22:23

Хорошо правильное решение состоит в том, чтобы использовать крон правильно и позволять каждому пользователю иметь их собственный crontab в расчете на пользователя. Разве существует ли некоторая опущенная причина относительно того, почему Вы настроили бы crontabs этот путь? Может даже быть более предпочтительно использовать crontabs в расчете на пользователя и некоторое другое обходное решение к тому, что это "объединило crontab", предназначается для преодоления...?

3
27.01.2020, 21:54
  • 1
    Существует совместно использованная вкладка только одного пользователя, и это не может измениться (у этого пользователя есть определенные полномочия) –  Jim 08.10.2013, 00:14
  • 2
    Затем на пользователя crontabs и SUDO был бы альтернативой? –  iain 08.10.2013, 00:46
  • 3
    Другое предложение, если Вы - тупик при совместном использовании crontab - использует систему управления версиями (мерзавец, cvs, svn), чтобы разместить необходимый файл и иметь сервер проверяют его к необходимому местоположению когда зарегистрированный. Затем у Вас есть полное управление версиями и откат, который является тем, чем Вы собираетесь быть после, если Вы надеетесь контролировать абсолютно совместную работу. crontab/sudo вариант лучше, если у каждого пользователя есть их собственные строки, они ответственны за. –  iain 08.10.2013, 00:48
  • 4
    have the server check it out to the necessary location when its checked in Как я делаю это? Вы могли уточнить? –  Jim 08.10.2013, 09:04

Теги

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