VMware Workstation 7&8&9 在安装时不会生成 /etc/vmware/network

VMware Workstation 7&8&9 在安装时不会生成 /etc/vmware/network

当我在 Arch Linux 上安装 VMware Workstation 时,虚拟以太网不工作。

$ sudo tail /var/log/vnetlib 
Aug 28 22:20:33 VNLFileExists - Cannot check for file or directory: /etc/vmware/networking , error: No such file or directory
Aug 28 22:20:33 VNLNetCfgLoad - Import file does not exist
Aug 28 22:20:33 VNL_Load - Error loading the vnet configuration, file used: /etc/vmware/networking
Aug 28 22:20:33 VNLNetCfgUnload - Requested cache is not loaded
Database file is not present.
Failed to initialize
Aug 28 22:20:41 VNLFileExists - Cannot check for file or directory: /etc/vmware/networking , error: No such file or directory
Aug 28 22:20:41 VNLNetCfgLoad - Import file does not exist
Aug 28 22:20:41 VNL_Load - Error loading the vnet configuration, file used: /etc/vmware/networking
Aug 28 22:20:41 VNLNetCfgUnload - Requested cache is not loaded

已编译所需模块。

以前,我已经从工作安装中复制了该文件或目录(我不记得了),但现在我需要一个真正的解决方案。

这对我来说很奇怪,也可能是硬件问题,因为在 Ubuntu 上,同样的事情也发生在同一台计算机上。

答案1

同意这是iptables配置 VMware Workstation 主机网络的关键且隐藏的部分。具体来说,我需要允许 ICMP 进出。这是使用相当严格的默认拒绝输入和输出 iptables 配置,因此其他人可能会遇到不同的过滤问题。

症状和错误日志根本无法帮助您解决这个问题。使用 VMware Workstation 9 时,vmware-netcfg行为异常(不保存新配置),并且/etc/init.d/vmware start无法创建或配置任何接口/dev/vmnet{0,1,8}。因此,如果ifconfig -a在启动 vmware 服务后没有显示任何接口,请查看此问题。

我采取了与 iptables 步骤略有不同的方法,即创建一个“空”/etc/vmware/networking文件:

$ touch /tmp/x
$ vmware-networks --migrate-network-settings /tmp/x

但后来卡住了,这个 iptables 答案有所帮助。该.../VMxxx/vmware.log文件显示如下行:

2013-08-20T11:14:11.075-05:00| vcpu-0| I120: VNET: MACVNetPortOpenDevice: Ethernet0: can't open vmnet device (No such file or directory)
2013-08-20T11:14:11.075-05:00| vcpu-0| I120: VNET: MACVNetPort_Connect: Ethernet0: can't open data fd
2013-08-20T11:14:11.075-05:00| vcpu-0| I120: Msg_Post: Warning
2013-08-20T11:14:11.075-05:00| vcpu-0| I120: [msg.vnet.connectvnet] Could not connect Ethernet0 to virtual network "/dev/vmnet1". More information can be found in the vmware.log file.
2013-08-20T11:14:11.075-05:00| vcpu-0| I120: [msg.device.startdisconnected] Virtual device Ethernet0 will start disconnected.

答案2

这是 iptables 问题。vmware 初始化其网络的方式需要通过 iptables 链中的一些数据包。不过,我不记得具体是哪条有问题的 iptables 规则。我关闭了防火墙,然后它就正常工作了。

相关内容