Что необходимо, чтобы сервис Linux поддерживался chkconfig?

Неправильный вопрос. Ничто, чтобы сделать с RAID.

Как может Вы убеждать своего босса, что знаете то, что Вы делаете.

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

Вы уже распознаете риски, и я также предполагаю, что можно описать их боссу ясным и понятным способом.

Помните, Вы должны получить его закрытие сделки, но не обсчитываете себя. Настаивайте на том, чтобы становиться достойными (возможно, более дорогой, выпущенный под брендом, поддерживаемый) набор вместо самого дешевого из eBay или PCWorld.

Тест. Тест. Тест.

Затем установите и ослабьтесь...

36
задан 22 June 2009 в 18:07
4 ответа

Сценарий должен иметь 2 строки:

# chkconfig: <levels> <start> <stop>
# description: <some description>

например:

# chkconfig: 345 99 01
# description: some startup script

345 - levels to configure
99 - startup order
01 - stop order

После добавления вышеупомянутых заголовков, можно работать chkconfig --add <service>.

74
ответ дан 28 November 2019 в 19:49
  • 1
    Дополнительное пространство на второй строке было добавлено скидкой с цены, это не нужно –  katriel 22 June 2009 в 18:19

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

4
ответ дан 28 November 2019 в 19:49

Похоже, что конкретная проблема Geo уже решена, но я столкнулся с похожим сообщением, пытаясь настроить приложение Rails с sidekiq в качестве управляемой службы. Я объясню свое решение здесь на случай, если оно поможет другим новичкам, таким как я.

Я работаю над установкой CentOS, а chkconfig уже настроен с несколькими другими службами, такими как httpd, mysql и redis. Обратите внимание, что большинство служб нужно включить только на уровнях выполнения 3 - 5 .

chkconfig --list
> httpd             0:off   1:off   2:on    3:on    4:on    5:on    6:off
> mysqld            0:off   1:off   2:on    3:on    4:on    5:on    6:off
> redis-server      0:off   1:off   2:on    3:on    4:on    5:on    6:off
> (etc...)

Мне нужно было добавить новый сценарий для службы sidekiq , поэтому я взял сценарий на https://gist.github.com/CD1212/5326706 , изменил его, чтобы он соответствовал параметрам моего приложения, и сохранил его в /etc/rc.d/init.d/sidekiq (принадлежит root, как и все остальные скрипты).

Однако, когда я попытался зарегистрировать эту новую службу, я получил ошибку chkconfig:

sudo chkconfig --add sidekiq
> service sidekiq does not support chkconfig

После некоторого дополнительного чтения я обнаружил, что номера приоритета, определенные в верхней части каждого сценария chkconfig, должны быть уникальными. Было бы неплохо получить более четкое сообщение об ошибке! Другой сценарий имел уровень приоритета выключения 75, поэтому я изменил свой на 76 и попробовал снова. Вот заголовок моего сценария инициализации:

#!/bin/bash
#
# sidekiq    Init script for Sidekiq
#
# chkconfig: 345 99 76
# processname: sidekiq
# pidfile: /var/www/visual_testing_tool/sidekiq.pid
# description: Starts and Stops Sidekiq message processor for the Rails app.
#

На этот раз sudo chkconfig --add sidekiq не пожаловался. Затем, когда я запустил sudo chkconfig --list sidekiq , служба sidekiq была показана как на для соответствующих уровней выполнения.

1
ответ дан 28 November 2019 в 19:49

Приоритетные номера не обязательно должны быть уникальными. Они представляют собой только заказ услуг.

ls -l /etc/rc.d/rc3.d/*oracle lrwxrwxx 1 корень 16 сентября 16 12:28 /etc/rc.d/rc3.d/S99oracle -> ../init.d/oracle

ls -l /etc/rc.d/rc3.d/*it
lrwxrwxrwx 1 корневой 12 сентября 16 12:36 /etc/rc.d/rc3.d/S99it -> ../init.d/it

Chkconfig не имел проблемы с добавлением сервиса "it". Иначе вы бы ограничились 100 сервисами.

Также в моем примере, он бы выполнялся до оракула, потому что скрипты выполняются в алфавитном порядке.

.
0
ответ дан 28 November 2019 в 19:49

Теги

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