Debian系统的网络配置文件是/etc/network/interface, 如果需要vde在开机时启动, 则可增加如下内容:
auto vde1 iface vde1 inet static address 10.10.1.1 netmask 255.255.255.0 vde2-switch - |
如果需要多个vde网络, 多增加几个vde网络就可以了.
不过我遇到了一个小小的问题, 用ifup手工启动, vde工作正常, 而重启机器启动的vde则无法使用, 在/var/run/vde2下也没有pid和mgmt文件.
drwxrws--- 2 root kvm 4096 2009-07-18 02:07 vde0.ctl drwxrws--- 2 root kvm 4096 2009-07-18 02:07 vde1.ctl drwxrws--- 2 root kvm 4096 2009-07-18 02:07 vde2.ctl drwxrws--- 2 root kvm 4096 2009-07-18 02:07 vde3.ctl |
这是由于在系统启动时, /etc/rcS.d/S16networking 先于/etc/rcS.d/S46mountnfs-bootclean.sh执行, 随后/etc/rcS.d/S46mountnfs-bootclean.sh执行了清理操作, 删除了/var/run/vde2目录下的所以普通文件.
将/etc/rcS.d/S46mountnfs-bootclean.sh删除后, vde网络启动就正常了. 由于在/etc/rcS.d/S16networking 执行之前/etc/rcS.d/S12mountall-bootclean.sh已经做过了/tmp, /var/run, /var/tmp的清理工作, 删除/etc/rcS.d/S46mountnfs-bootclean.sh应该是安全的.
这个文件可能是使用nfs文件系统作root分区时使用的.
我已将这个问题作为bug提交给debian, 用了Debian快10年了, 还是第一次给Debian提交Bug.