У меня есть сервис, foo
который в настоящее время начинается с уровня запуска 3 и выше. Как я могу помешать этому без использования update-rc.d foo stop 3 .
, которое (если я правильно понимаю) будет отключать службу при каждом изменении уровня выполнения.
(т.е. если бы я был на уровне выполнения 1 и был включен foo
, то при переходе на уровень выполнения 3 он был бы отключен, нет?)
Работает Debian GNU / Linux Lenny.
sudo update-rc.d -f sunrpc remove
не работает; его все еще присутствует после перезагрузки.ls /etc/rc*.d
16.04
update-rc.d apache2 disable
Настройте загрузочные приложения Linux с помощью sysv-rc-conf :
Как уже отмечали другие, здесь также есть update-rc.d для строки cmd.
Например, запустить
отключить apache2 со всех уровней запуска.
источник
service foo stop
или перезагрузить серверКороткий:
Нет надежного способа сделать это быстро.
Долго:
Текущий Debian (Debian нестабильный по состоянию на 2012-06-01) в настоящее время не имеет надежного краткого способа последовательного отключения службы / демона. - Поскольку обновление пакета демона безоговорочно запускает «/etc/init.d/package restart», отключая его для этого уровня запуска или нет.
Чтобы убедиться, что демон не запускается, вы можете:
Есть / был (?) Некоторый шаг init-policy-что-то для сценариев инициализации в Debian, который должен был заполнить эту недостающую функциональность. - Я пытался его использовать, нашел его сложным, нашел ошибку и больше никогда ее не трогал.
Обновить:
Переключитесь на «systemd», альтернативу «initd». Пакет Debian существует, и вы можете отключить службу с помощью чего-то вроде этого:
источник
unlink xyz.service
же хорошо?systemd
будут использоваться. - Так что ссылка говорит не искать их./etc/default/xyz
файла для добавленияexit
не помешает упаковщику перезаписать файл правильной версией при следующем обновлении. (Пакет сохраняет файлы конфигурации, и в большинстве случаев сценарии инициализации не рассматриваются как таковые.) Так что в большинстве случаев это не поможет.Запустите эту команду
apt-get установить rcconf
После установки запустите rcconf в SSH, и вы получите диалоговое окно, отображающее все службы, настроенные для запуска при загрузке. Выберите те, нажав пробел, чтобы отключить / включить конкретный, и все готово, просто нажмите кнопку ОК, и этот сервис не потрудится запустить снова при следующей загрузке. Используя это годами. Очень удобный инструмент для пользователей Debian / Ubuntu, таких как я.
источник
Я запутался в том, что ты пытаешься сделать.
На каких уровнях запуска вы хотите запустить foo?
Если вы всегда хотите, чтобы он работал, используйте
update-rc.d foo defaults
; это остановит его в 0, 1 и 6, оставив его работающим в 2, 3, 4 и 5. (1 не должен запускать ничего, кроме оболочки, 0 и 6 останавливаются и перезагружаются)Если вы хотите точно указать, на каких уровнях запуска запускать:
источник
Я думаю, что это сделает работу: insserv -r foo
источник
Начните использовать insserv из Debian7
Вывести все сервисы и информацию об уровне выполнения
Удалить перечисленные скрипты со всех уровней запуска
источник
Диспетчер загрузки Ubuntu - это своего рода sysv-rc-conf light , более дружественная версия с графическим интерфейсом, и многие, читающие эту ветку, оценят это.
http://www.marzocca.net/linux/bum.html
источник
На основе системы Red Hat вы могли бы использовать
убрать сервер с уровней запуска
в системе на основе Debian все службы должны запускаться с помощью файлов, найденных в каталогах /etc/rc?.d/, и эти файлы имеют символическую ссылку на соответствующие файлы в каталоге /etc/init.d/. Если вы хотите, чтобы служба не запускалась по умолчанию, вы можете переименовать / удалить ее из каталога /etc/rc?.d, и ваши изменения будут сохранены при обновлении пакета, пока одна из стартовых ссылок все еще появляется в одной из другие (3,4 и 5) каталоги. Или вы можете использовать команду update-rc.d, чтобы изменить ссылку (и), и если вы хотите запустить службу после этого, вы можете использовать /etc/init.d/service_name start, если вы оставите запуск с конца, он будет дать вам варианты, которые могут быть использованы, как остановить, перезагрузить, перезагрузить ...
Я думаю, что вы можете использовать sysv-rc-conf, чтобы отключить его.
источник
Если вы хотите указать уровни запуска.
Не забудьте сменить услугу на название программы.
источник
Почему бы вам не сделать резервную копию сценария запуска в другом месте и удалить его в /etc/init.d/? Если update-rc.d не работает.
источник