该“脚本”包含在sysv-rc
包装中。这是Debian策略的一部分,该策略使sysadmins可以在安装/升级/卸载软件包时控制启动/重新启动/停止哪些服务:
POLICY-RC.D策略层(/usr/sbin/policy-rc.d)接口:
大多数Debian系统不会使用此脚本,因为对策略层的需求不是很常见。大多数使用chroot jails的人只需要一个单行脚本,该脚本返回被监禁的/usr/sbin/policy-rc.d脚本的退出状态101。
/usr/sbin/policy-rc.d文件必须由提供该文件的任何软件包通过替代系统(/ usr / sbin / update-alternatives)进行管理。
/usr/sbin/policy-rc.d [选项] []
/usr/sbin/policy-rc.d [options] --list [...]
(来源)
那么,这里发生了什么?好吧,只要存在此脚本,它将返回一个代码,该代码说明本地系统的当前策略(默认情况下101
=策略禁止的操作)。如果要更改策略,只需将文件作为根修改为以下任何值:
0 - action allowed
1 - unknown action (therefore, undefined policy)
100 - unknown initscript id
101 - action forbidden by policy
102 - subsystem error
103 - syntax error
104 - [reserved]
105 - behaviour uncertain, policy undefined.
106 - action not allowed. Use the returned fallback actions
(which are implied to be "allowed") instead.
该脚本仍然是占位符,但是完成后可以返回所有这些值。如果你想允许任何变化只是改变exit 101
了exit 0
,做。每当您安装/删除/升级服务时,这些服务都会(重新)启动/停止。
exit 101
# For most Docker users, "apt-get install" only happens during "docker build", # where starting services doesn't work and often fails in humorous ways. This # prevents those failures by stopping the services from attempting to start.