В чем разница между & ldquo; Сервисом & rdquo; и & ldquo; /etc/init.d/&rdquo ;?

В течение некоторого времени я управлял установкой серверов как во включенном, так и в выключенном состоянии Ubuntu - я вполне приспособился к /etc/init.d/ для перезапуска служб. Теперь я получаю это сообщение:

root@tatooine:~# /etc/init.d/mysql status
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql status

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the status(8) utility, e.g. status mysql
mysql start/running, process 14048

Это, кажется, произошло в последней LTS Ubuntu - почему? Что такого плохого в /etc/init.d/ и в чем / есть разница между service и /etc/init.d/?

123
задан 17 January 2012 в 23:51

2 ответа

/etc/init.d скрипты - это старый способ делать вещи. Они пришли из стандарта System V. Однако, эти сценарии запускаются только в определенной последовательности, поэтому никакие реальные зависимости не могут быть установлены.

Поэтому был разработан upstart с намерением заменить все сценарии /etc/init.d на Upstart сценарии (в /etc/init). Служба

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

112
ответ дан 17 January 2012 в 23:51

Также проверьте страницу руководства для служебной команды: man service

service запускает сценарий в предсказуемой среде (рабочий каталог / и установлены только 2 переменные среды: LANG и TERM). Также добавлена ​​возможность выполнения - полного перезапуска . Итак, подведем итог:

  1. служба может запускать сценарии из / etc / init или /etc/init.d (upstart или System V)
  2. служба запускает сценарии в предсказуемой среде.

Аспект «предсказуемой среды» может вызвать проблемы, если ваш сценарий по какой-то причине зависит от переменной среды. Вероятно, есть способ обойти это, но я не знаю, что это такое, и это выходит за рамки этого вопроса :)

29
ответ дан 17 January 2012 в 23:51

Другие вопросы по тегам:

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