如何在Debian Linux上用SysV Init替换Systemd
目的
用SysV Init替换systemd作为Debian Stretch上的init系统发行版
Debian拉伸要求
具有root权限的有效Debian Stretch安装。困难
中约定
介绍
并非每个人都喜欢systemd,对于那些不喜欢systemd的人,确实没有太多选择。如果您想要稳定的服务器,则尤其如此。不用担心,Debian实际上仍然支持SysV Init,并且切换起来并不难。**注意:**如果您正在运行GNOME或其他对systemd有严格依赖性的桌面环境,请不要尝试此操作。它将破坏您的系统。
添加Devuan存储库
如果您只想切换init系统并将systemd安装为兼容层,则此部分不是严格必需的。那会很好。如果您完全不希望在系统上使用systemd,则需要做出一些安排以使依赖于它的事物起作用。Devuan,没有系统的Debian分支有点落后。他们的Stretch版本ASCII还没有准备好,并且运行Devuan的测试版本目前还不是很稳定。但是,确实构建了一些关键的软件包来使依赖于systemd的程序在没有它的情况下工作,并且您可以在Debian中使用它们。
首先,
.list
在/etc/apt/sources.list.d/
Devuan中创建一个新文件。然后,向其添加以下行。deb http://packages.devuan.org/devuan/ ascii main保存并退出。
接下来,您将需要Devuan签名密钥。抓住
wget
。$ cd Downloads
$ wget https://devuan.org/os/keyring/This email address is being protected from spambots. You need JavaScript enabled to view it.
然后,将其导入Apt。# apt-key add This email address is being protected from spambots. You need JavaScript enabled to view it.
Pin Devuan套餐
除非您想要一个真正奇怪的Debian / Devuan混合体,否则您将只需要固定所需的Devuan软件包。创建一个文件devuan.list
,位于/etc/apt/preferences.d/
。向其添加以下行。Package: *
Pin: release a=stable
Pin-Priority: 1000
Package: *
Pin: release a=ascii
Pin-Priority: 2
Package: udisks2
Pin: release a=ascii
Pin-Priority: 1001
Package: libudisks2-0
Pin: release a=ascii
Pin-Priority: 1001
Package: cgmanager
Pin: release a=ascii
Pin-Priority: 1001
Package: libcgmanager0
Pin: release a=ascii
Pin-Priority: 1001
Package: libpolkit-agent-1-0
Pin: release a=ascii
Pin-Priority: 1001
Package: libpolkit-backend-1-0
Pin: release a=ascii
Pin-Priority: 1001
Package: libpolkit-gobject-1-0
Pin: release a=ascii
Pin-Priority: 1001
Package: policykit-1
Pin: release a=ascii
Pin-Priority: 1001
这很长很烦人,但是一旦删除systemd,它就不会破坏很多东西。在继续之前进行更新。# apt update
安装Devuan软件包
下一步相当简单。安装您刚刚设置的所有软件包。# apt -t ascii install udisks2 libudisks2-0 cgmanager libcgmanager0 libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 policykit-1
安装SysV
您终于准备好安装SysV。这也很容易。# apt install sysvinit-core sysvinit-utils然后,复制SysV的inittab使其成为系统默认值。
# cp /usr/share/sysvinit/inittab /etc/inittab一切就绪后,并且您确信已正确安装了所有内容,请重新启动系统。您应该在启动过程中立即看到差异。
删除系统
同样,此步骤是完全可选的,可能仍然会破坏事情。这将退出systemd以及仍然依赖它的所有内容。你被警告了。# apt remove --purge --auto-remove systemd如果您想更改,请将systemd添加到您的Apt首选项中。
Package: systemd
Pin: release *
Pin-Priority: -1