![重新排序启动时运行脚本的方式](https://linux22.com/image/565133/%E9%87%8D%E6%96%B0%E6%8E%92%E5%BA%8F%E5%90%AF%E5%8A%A8%E6%97%B6%E8%BF%90%E8%A1%8C%E8%84%9A%E6%9C%AC%E7%9A%84%E6%96%B9%E5%BC%8F.png)
我刚刚转到 debian squeeze,需要更改一些脚本的启动顺序。我以前用 LSB 方式执行此操作,update-rc.d service defaulta xx xx
但现在使用 LSB 方式,该update-rc.d
方法不会改变顺序。
我需要按以下顺序启动软件包:
- 开放VPN
- ndo2db
- 纳吉奥斯
- 阿帕奇2
有任何想法吗?
答案1
只需使用Required-Start
关键字。例如,初始化脚本ndo2db
应该具有以下内容:
### BEGIN INIT INFO
# Provides: ndo2db
# Required-Start: $openvpn
# Required-Stop: $openvpn
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Daemonized ndo2db
# Description: Starts the ndo2db daemon
### END INIT INFO
看一眼这更多细节。
答案2
在 init.d 目录中的相应文件中编辑了Required-Start 行(和Required-Stop 行)后,对您想要重新排序的每个服务执行以下命令:
chkconfig --del servicename
chkconfig --add servicename
一旦完成此操作,初始化脚本将在您的 rc#.d 目录中重新排序。