Как отключить услугу выскочки в ubuntu 10.10?

В 10.10 вместо sysvinit используется выскочка.

Можно удалить досадные услуги выскочки, которые вы не хотите, удалив соответствующий файл в /etc/init/blah.conf

Тем не менее, это, кажется, тяжелый подход. Как вы правильно настроили выскочку, чтобы иметь возможность выборочно включать и отключать эти службы через командную строку?

В качестве практического примера ответы, перечисленные здесь, чтобы отключить gdm с помощью rcconf, больше не работают: как я могу предотвратить запуск GDM при загрузке на Ubuntu?

    Если вы посмотрите в /etc/init.d, вы заметите, что любые службы, настроенные с помощью выскочки, являются просто символическими ссылками на / lib / init / upstart, поэтому их удаление из /etc/init.d просто удаляет ссылку – не скрипт ,

    Если вам нужен интерфейс, вы можете установить пакет chkconfig ( apt-get install chkconfig ), который дает полезный инструмент командной строки:

     # chkconfig --list acpi-support 0:off 1:off 2:on 3:on 4:on 5:on 6:off acpid 0:off 1:off 2:off 3:off 4:off 5:off 6:off alsa-mixer-save 0:off 1:off 2:off 3:off 4:off 5:off 6:off anacron 0:off 1:off 2:off 3:off 4:off 5:off 6:off apache2 0:off 1:off 2:on 3:on 4:on 5:on 6:off apparmor 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on apport 0:off 1:off 2:off 3:off 4:off 5:off 6:off atd 0:off 1:off 2:off 3:off 4:off 5:off 6:off .... and so on .... 

    Вы можете включать / отключать службы для определенных уровней выполнения (или просто включать и выключать их) с помощью:

     # chkconfig -s <service> <state/runlevels> 

    например:

     # chkconfig -s gdm off 

    Полностью отключить его,

     # chkconfig -s gdm on 

    Включить его с помощью defaultsm или

     # chkconfig -s gdm 34 

    Чтобы включить его только для уровней запуска 3 и 4.

    Обычно вы найдете эту команду в системах на базе RHEL (CentOS, Fedora и т. Д.).

    ОБНОВИТЬ

    Это характерно для Ubuntu и gdm / kdm / whatever.

    Когда gdm запускается, он вызывает файл конфигурации upstart /etc/init/gdm.conf

    Затем этот файл ссылается на / etc / X11 / default-display-manager, чтобы узнать, является ли он диспетчером отображения по умолчанию для системы – если он начинается, он запускается.

    Диспетчер / etc / X11 / default-display-manager просто содержит:

     /usr/sbin/gdm 

    Вы можете заменить это другим диспетчером дисплея или полностью удалить файл, и он не запустит gdm.

    Строка из файла /etc/init/gdm.conf:

     [ ! -f /etc/X11/default-display-manager -o "$(cat /etc/X11/default-display-manager 2>/dev/null)" = "/usr/sbin/gdm" ] || { stop; exit 0; } 

    Он говорит: «Если файл / etc / X11 / default-display-manager не существует или если он не содержит /usr/sbin/gdm то выйдите из"

    Я всегда нашел инструмент sysv-rc-conf очень полезным, у него очень приятный и простой в использовании интерфейс.

    Установите его следующим образом:

     sudo apt-get update sudo apt-get install sysv-rc-conf 

    Используйте его так:

     sudo sysv-rc-conf 

    Просто взгляните на man 5 init и вы найдете более подходящее решение. Короткий пример: предположим, что у нас есть служба под названием «foobar», поэтому будет файл с именем /etc/init/foobar.conf с его настройкой выскочки. Теперь вы не хотите удалять этот файл или изменять его – но вы не хотите, чтобы эта служба запускалась? Поэтому поместите над ним файл переопределения : /etc/init/foobar.override , содержащий (необязательно заголовок с описанием и), вместо того, чтобы start on / stop on строках, вы помещаете строку одним словом: manual . Таким образом, вы говорите выскочке в основном использовать foobar.conf , но переопределяете определение запуска только для запуска этой службы при ручном принуждении (через service foobar start в нашем примере).

    Моя рекомендация состояла бы в том, чтобы просто прокомментировать все строки «начинать дальше» и «останавливаться». Это сработало для меня, когда я запускал «initctl show-config», чтобы узнать, был ли автоматический запуск моей программы, который я хотел, отключен.

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

    Используя Ubuntu 11.04, я смог отключить GDM, отредактировав файл /etc/init/gdm.conf и удалив все записи «start on». Вот моя предварительная редакция:

     start on (filesystem and started dbus and (drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1 or stopped udev-fallback-graphics)) stop on runlevel [016] 

    Вот мое сообщение:

     start on stop on runlevel [016] 

    Вот решение:

    http://ubuntuforums.org/showpost.php?p=9416839&postcount=3

    @Matt Дженкинс

    Мне никогда не нравился запуск Ubuntu – и Linux в целом. Он всегда казался таким грязным и клочковым. Дайте мне FreeBSD rcng в любой день. В любом случае – для диспетчера дисплеев Ubuntu> у вас есть то, что показывает мое редактирование …

    Arch Linux имеет отличную систему инициализации. Однако systemd удаляет любую другую систему init из планеты.

    Давайте будем гением компьютера.