我正在运行 Debian Jessie。在启动过程中我想读取一些用户输入。这是通过 /etc/init.d/ 中的自定义脚本和运行级别目录中的符号链接来完成的。现在我希望 kdm
由另一个初始化脚本启动的 ,仅在我的自定义脚本完成后才启动。
我云通过添加类似的东西来实现这一点
while test -e /tmp/kdm-boot-lock
do
echo "waiting for lock-file to be deleted by custom-script"
sleep 1
done
到/etc/init.d/kdm
但我更喜欢一个不更改外部文件的解决方案(可能会因更新而更改)。
所以问题是:如何防止kdm
在我的自定义脚本完成之前启动一个不同的(未改变的)初始化脚本()?
答案1
kdm
由于您使用的是 initscripts,因此推迟直到自定义脚本完成的正确方法是kdm
在 LSB 标头中声明自定义脚本的依赖项:
# Required-Start: ... yourscript
在kdm
初始化脚本中,以及
# Provides: yourscript
在您的自定义初始化脚本中。
为了避免对 initscript 的更改kdm
在升级时丢失,您可以将其 LSB 标头复制到(具有相同名称)insserv
中的覆盖文件中/etc/insserv/overrides
,然后对其进行编辑。