在 Debian 上,如果您要安装的软件包具有 systemd 服务,它们将在安装后自动启用并启动。我已经发现禁用后者的方法,但还不是前者。
似乎安装后脚本就是用来deb-systemd-helper
执行此操作的,这意味着禁用它应该不是不可能的。
编辑:这就是我最终所做的。
/etc/systemd/system-preset/00-disable-all.preset
:
disable *
答案1
它看起来像“您可以ssh.service
在安装包之前创建一个到 mask 的符号链接”。例如ln -s /dev/null /etc/systemd/system/ssh.service
。
我想这需要您知道该包创建的所有服务的名称。
我知道这种方法有一个小缺点。如果您有一个被屏蔽的服务也被标记为“已启用”,那么systemd
将在启动过程中记录一条警告。
请注意,systemd
“掩码”将阻止通过任何方法启动服务,包括手动运行systemctl start ssh
。因此,根据您想要执行的操作,您可能需要在安装软件包后删除遮罩。
如果包是ssh
,它有一个特定的 hack,你可以使用它!坏消息:这意味着包中需要特定的 hack,因为所有其他方法都有缺点。但如果您愿意,可以看看我考虑的方法:-)。安全地配置我的 sshd(通过自动化)