Назад | Перейти на главную страницу

Что эквивалентно «запуску служебного имени», которое Fedora / RHEL / CentOS использует для Debian / Ubuntu?

Что эквивалентно «запуску служебного имени», которое Fedora / RHEL / CentOS использует для Debian / Ubuntu?
Я только что прочитал здесь на serverfoault вопрос о том, что использование /etc/init.d/service устарело, так каков правильный способ использования Debian?

Не знаю, как "правильный" способ, но всегда использую invoke-rc.d, так например для перезапуска MySQL:

sudo invoke-rc.d mysql restart

Вы всегда можете просто вызвать сценарии запуска напрямую (например, /etc/init.d/foo restart). Это работает и с вариантами RedHat, хотя путь там немного отличается (/etc/rc.d/init.d, хотя я считаю, что /etc/init.d также является символической ссылкой на него).

почти все дистрибутивы имеют /etc/init.d/service ********** {start | restart | reload | stop}

Такой же service <servicename> start у меня работает в Ubuntu 9.04. Он находится в пакете sysvinit-utils.

Использование /etc/init.d/foo в RedHat может вызвать проблемы, если активирован selinux, потому что сценарий не должен правильно настраивать контекст. Сервисная команда всегда работает на RHEL с поддержкой selinux.

Предлагаю вам прочитать про Upstart:

http://upstart.ubuntu.com/

http://www.linux.com/archive/feature/125977

http://www.netsplit.com/category/tech/upstart/

Используется на:

  • Ubuntu 6.10 и новее
  • Fedora 9 и новее
  • Debian (как вариант)
  • Платформа Nokia Maemo
  • WebOS от Palm

Да, я тоже этим пользуюсь. /usr/sbin/invoke-rc.d - это то, что вам нужно.

Что бы то ни было в системах Redhat, /etc/init.d/service по-прежнему является нормой для производных от debian.