Недавно я обновил некоторые из наших машин до Fedora 17. Я заметил, что есть некоторые службы, уровни запуска которых я могу настраивать с помощью chkconfig
, в то время как другие вообще там не отображаются и могут быть настроены с помощью systemctl
.
Например, есть похожие команды chkconfig network off
и systemctl disable NetworkManager.service
. (Я понимаю, что network
и NetworkManager
— разные, суть не в этом.)
Почему некоторые службы можно настроить с помощью одного инструмента, а другие — нет?
Заменяет ли один инструмент другой? Например, уровни запуска очень очевидны в chkconfig
, но я даже не могу сказать, существует ли эта концепция в systemd
.
Редактировать: Я нашелстолкоторый отображает вызовы из chkconfig в systemctl
решение1
Отстраница вики fedora о systemd:
Работает ли команда chkconfig с systemd?
Да, для включения/выключения служб совместимость была обеспечена в обоих направлениях. chkconfig был изменен для вызова systemctl при работе с файлами служб systemd. Также systemctl автоматически вызывает chkconfig при работе с традиционным файлом инициализации sysv.
Это означает, что вы сможете использовать любой из этих инструментов для управления своими услугами.
Концепция уровней выполнения все еще существует, например (это система Debian):
ls -l runlevel*.target
lrwxrwxrwx 1 root root 15 Jun 5 22:57 runlevel0.target -> poweroff.target
lrwxrwxrwx 1 root root 13 Jun 5 22:57 runlevel1.target -> rescue.target
lrwxrwxrwx 1 root root 17 Jun 5 22:57 runlevel2.target -> multi-user.target
lrwxrwxrwx 1 root root 17 Jun 5 22:57 runlevel3.target -> multi-user.target
lrwxrwxrwx 1 root root 17 Jun 5 22:57 runlevel4.target -> multi-user.target
lrwxrwxrwx 1 root root 17 Jun 5 22:57 runlevel5.target -> multi-user.target
lrwxrwxrwx 1 root root 13 Jun 5 22:57 runlevel6.target -> reboot.target