在 Ubuntu 10.04.1 LTS 服务器上安装的某些服务在重启后无法正常启动。
我在 eth0 上定义了几个虚拟接口:
/etc/网络/接口
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 172.16.5.240
netmask 255.255.255.0
gateway 172.16.5.1
auto eth0:1
iface eth0:1 inet static
address 172.16.5.241
netmask 255.255.255.0
gateway 172.16.5.1
auto eth0:2
iface eth0:2 inet static
address 172.16.5.242
netmask 255.255.255.0
gateway 172.16.5.1
auto eth0:3
iface eth0:3 inet static
address 172.16.5.243
netmask 255.255.255.0
gateway 172.16.5.1
等等...
一些尝试绑定到例如 172.16.5.243 的 SysV 初始化脚本在启动期间失败,并抱怨没有这样的 IP 地址。
我的问题:
1) 默认情况下,服务是否并行启动?我可以禁用此功能以便它们按顺序运行吗?
2) 有没有办法定义 rc 脚本之间的依赖关系?我只熟悉使用 /etc/rc[0-6].d/ 中的数字定义按顺序启动的脚本的顺序)
任何其他修复或解决方法均值得赞赏。
答案1
您的问题没有明确的答案。这取决于需要 172.16.5.243 的服务是 SysV init 脚本还是 upstart 作业。
当它是一个 SysV 启动脚本时,您可以在启动脚本中添加带有此标头的依赖项:
### BEGIN INIT INFO
# Provides: scriptname
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
如果是 Upstart 脚本,请查看这个帖子有趣的部分是在接受的答案中:
start on (local-filesystems and net-device-up IFACE=eth0)