此问题在 Ubuntu 10.10 中已解决。有关详细信息,请参见 Ubuntu 缺陷 341006。
注意:截至 2013 年 7 月 17 日,上述链接正确无误。如果您发现该链接已损坏,请提供反馈,VMware 员工将会更新该链接。
要解决此问题,请更改网络接口的持久 udev 规则:
-
在 Ubuntu 客户机中,打开命令提示符。有关详细信息,请参见 Opening a command or shell prompt (1003892)。
-
以 root 身份在文本编辑器中打开 /etc/udev/rules.d/70-persistent-net.rules 文件:
sudo vim /etc/udev/rules.d/70-persistent-net.rules
-
该文件包含每个 udev 规则的行,将 MAC 地址与 ethN 接口名称相关联。例如:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:xx:xx:xx:xx:xx", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:xx:xx:xx:xx:xy", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
-
通过 ATTR{address}=="" 字段中的 MAC 地址标识新旧接口。例如:
ATTR{address}=="xx:xx:xx:xx:xx:xx" ...NAME="eth0" # old
ATTR{address}=="xx:xx:xx:xx:xx:xy" ...NAME="eth1" # new
-
将 ethN 名称从旧接口复制到新接口行。例如:
ATTR{address}=="xx:xx:xx:xx:xx:xx" ...NAME="eth0" # old
ATTR{address}=="xx:xx:xx:xx:xx:xy" ...NAME="eth0" # new
-
删除旧 ethN 接口的行。例如:
ATTR{address}=="xx:xx:xx:xx:xx:xx" ...NAME="eth0" # new
-
保存 udev 配置文件。
-
重新引导 Ubuntu 虚拟机。
系统重新引导后,之前的网络接口的网络配置将应用于新接口。
注意:如果无法重新引导虚拟机,可以使用以下命令手动重新启动网络服务:
service networking restart
如果此命令失败并显示未知实例错误,请运行以下命令:
/etc/init.d/networking restart
有关 Ubuntu 网络服务重新启动问题的详细信息,请参见 Ubuntu 缺陷 440179。