Я сконфигурировал строки в /etc/inittab
следующим образом:
# The default runlevel. id:2:initdefault:
Но после входа на выход runlevel
выглядит следующим образом:
N 5
Итак, почему я на уровне запуска 5 установлен 2?
Примечание. В качестве дополнительной информации здесь нет данных – выход для моей системы
Linux d3bi4n 3.16.0-4-amd64 #1 SMP Debian 3.16.7-2 (2014-11-06) x86_64 GNU/Linux
и выход dpkg -S /sbin/init
является
systemd-sysv: /sbin/init
$ dpkg -S /sbin/init systemd-sysv: /sbin/init
Ваша система init – Systemd, а не SysVinit. /etc/inittab
является конфигурационным файлом SysVinit, он не используется Systemd. Я предполагаю, что у вас есть этот файл, потому что это jessie-система, которая была обновлена с более ранней jessie или с хриплым с SysVinit.
Systemd точно не имеет понятия уровней запуска, хотя и приближает их к совместимости с SysVinit. Вместо этого у Systemd есть «целевые единицы». Вы можете выбрать целевую единицу времени загрузки, установив символическую ссылку /etc/systemd/system/default.target
. Дополнительную информацию см. В разделе « Часто задаваемые вопросы по Systemd» .
Если вы не хотите использовать Systemd, установите пакет sysvinit-core
, который предоставляет традиционный SysVinit (ранее в пакете sysvinit
, который в jessie теперь является фронтом для systemd). Начиная с jessie, Debian по умолчанию использует Systemd, но по-прежнему поддерживает SysVinit.
Вероятно, у вас будет установлен уровень запуска 5 в командной строке или аргументах ядра (посмотрите на конфигурацию grub):
Вы можете переопределить уровень запуска по умолчанию с параметром ядра. Когда отображается меню загрузки, выберите параметр редактирования. Затем найдите строку ядра и добавьте пробел и номер требуемого уровня запуска. Например, «kernel /boot/vmlinuz-2.6.30 root = / dev / sda2 ro 3» будет загружаться до уровня запуска 3.
Источник: https://unix.stackexchange.com/a/164028/120177 , http://www.freedesktop.org/software/systemd/man/systemctl.html
Откройте терминал и (с правами root) выполните:
systemctl set-default multi-user.target
или с –force
systemctl set-default -f multi-user.target
для перезаписывания любых существующих конфликтующих символических ссылок1.
Двойная проверка:
systemctl get-default
Другим способом является добавление следующего параметра в вашу загрузочную строку ядра:
systemd.unit=multi-user.target
Я смотрю, как работать под Debian 8, аналогично использованию с системой inittab
:
1:2345:respawn:/sbin/getty 38400 tty1 2:23:respawn:/sbin/getty 38400 tty2 3:23:respawn:/sbin/getty 38400 tty3 BPQ:2345:respawn:/home/bpq32/runbpq >/dev/tty4
где у меня есть перенаправление выходного запуска программы runbpq
на /dev/tty4
но как это сделать в Debian 8 с systemd ??
С наилучшими пожеланиями
От: https://wiki.debian.org/RunLevel
Установка Debian по умолчанию не имеет никакого значения между уровнями выполнения 2-5.