我正在尝试在新的 Debian Wheezy 系统上安装我们编写的 .deb 文件。 .deb 文件最初是为 Lenny 编写的,因此相当古老。我通过尝试使用 dpkg -debug=3773 安装软件包找到了安装失败的一点:它正在尝试使用 update-rc.d 添加一些服务:
update-rc.d r-initialize-config start 12 2 .
这给出了错误:
update-rc.d: using dependency based boot sequencing
insserv: Service r-interfaces has to be enabled to start service first-boot
insserv: exiting now!
update-rc.d: error: insserv rejected the script header
该脚本包含此作为标题注释(这是 LSB 标题?)
### BEGIN INIT INFO
# Provides: first-boot
# Required-Start: $local_fs r-interfaces
# Required-Stop:
# Default-Start: 2
# Default-Stop:
# Short-Description:
### END INIT INFO
并且 r-interfaces 脚本存在并且似乎运行正确。
由“Required-Start:”属性启动的程序有什么要求?例如,我将 r 接口更改为“ls”并遇到了同样的问题。 r-interfaces 是一个瞬态脚本,不作为守护进程运行,所以也许这就是问题所在。 required-start: 需要什么?