为什么debian忽略/ etc / network / interfaces中的静态configuration?

我试图设置一个Debian虚拟机有一个静态networkingconfiguration。 我在/ etc / network / interfaces中有以下内容:

auto lo iface lo inet loopback auto eth0 iface eth0 inet static address xyz73 netmask 255.255.255.0 gateway xyz1 

然而,当运行ifup脚本时,它坚持运行一个我不想要的DHCP客户端。 当在shell下运行时,我可以看到一些有趣的variables永远不会被设置,而且我看不到/ etc / network / interfaces在任何地方被读取。 不过,我确实看到了/etc/netscripts/network.conf文件(从来没有听说过这个文件)。

 root@host:~# bash -x /sbin/ifup eth0 ++ id -un + '[' root '!=' root ']' .. snip .. + IF_AUTO=eth0 + IPV4_DISABLE=NO + IPV6_DISABLE=NO ++ uname -r + BASE_MODPATH=/lib/modules/3.2.0-4-amd64/kernel + MODPATH=/lib/modules/3.2.0-4-amd64/kernel/net ++ cut -d . -f 1,2 ++ uname -r + KERN_VERSION=3.2 ...snip... + '[' -f /etc/netscript/network.conf ']' + source /etc/netscript/network.conf + . /etc/netscript/network.conf ++ VERBOSE=YES ...snip... ++ BACKUP_LEVELS=3 ++ IF_AUTO=eth0 ...snip... + vb echo -n 'Configuring interface:' + echo -n 'Configuring interface:' + '[' eth0 = all ']' + case "$RUNLVL" in + eval local 'IF_CHAIN_AUTO="${eth0_IF_CHAIN_AUTO:-}"' ++ local IF_CHAIN_AUTO= + if_up eth0 + local ADDR + eval 'IPADDR=${eth0_IPADDR:-}' ++ IPADDR= + eval 'MASKLEN=${eth0_MASKLEN:-}' ++ MASKLEN= + eval 'BROADCAST=${eth0_BROADCAST:-}' ++ BROADCAST= + eval 'PTPADDR=${eth0_PTPADDR:-}' ++ PTPADDR= + eval 'IP_EXTRA_ADDRS=${eth0_IP_EXTRA_ADDRS:-}' ++ IP_EXTRA_ADDRS= + eval 'MTU=${eth0_MTU:-}' ... snip .... + qt type eth0_start + type eth0_start + qt type eth_start + type eth_start + eth_start eth0 + '[' -x /sbin/dhclient ']' + qt /sbin/dhclient eth0 + /sbin/dhclient eth0 

为什么这些设置被忽略? 我在configuration中做了一个愚蠢的错字吗? 还是我忘了运行一些行政命令? interfaces文件是否已经过时,而不是使用network.conf一个?

你似乎可能已经安装了netscript-2.4而不是ifupdown,或者更糟的是,除了? 你显然有一个debian的现代安装,什么内核3.2。 我会检查你是否有ifupdown,如果你没有安装它。 这应该会导致它删除错误的软件包。

祝你好运。