安装Xen、创建Xen虚拟机、使用Xen虚拟机过程中经常出现的错误总结

目录

(1) 启动 Xend 时出现错误 ImportError: /usr /lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4 (2) 使用 virt-install 创建Xen虚拟机时出现错误:ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效 (3) virt-manager 中连接虚拟机管理者Dom 0时出现错误:虚拟机管理者连接失败 libvirtError: virConnectOpenReadOnly() failed (4) virt-install 安装虚拟机是出现错误:ERROR 无法连接到 ‘localhost:8000’: 拒绝连接 (5) virt-manager 安装Xen虚拟机连接网络时nat和桥接设备均为空,无法选择,安装不能继续(6) virt-manager 或者 virt-install 安装虚拟机系统过程中出现错误:’libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err ‘Device 0 (vif) could not be connected. Hotplug scripts not working.

(7)半虚拟化安装,选择nat上网方式、IP配置使用 DHCP 方式时,虚拟机系统安装过程卡在 TCP/IP 配置界面,停滞不前

错误总结

使用 CentOS 5.2 默认安装的 Xen,启动 Xend 时出现如下错误:(1) 启动 Xend 时出现错误 ImportError: /usr /lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4 ————————————————————————————–[root@glnode04 ~]# xendTraceback (most recent call last):File “/usr/sbin/xend”, line 51, in <module>from xen.xend.server import SrvDaemonFile “/usr/lib64/python/xen/xend/server/SrvDaemon.py”, line 20, in <module>import xen.lowlevel.xcImportError: /usr/lib64/python/xen/lowlevel/xc.so: undefined symbol: Py_InitModule4 [root@glnode04 ~]# xm listTraceback (most recent call last):File “/usr/sbin/xm”, line 8, in <module>from xen.xm import mainFile “/usr/lib/python/xen/xm/main.py”, line 45, in <module>from xen.util import securityFile “/usr/lib/python/xen/util/security.py”, line 25, in <module>from xen.lowlevel import acmImportError: /usr/lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4 —————————————————————————————-############################################

原因分析和解决办法:直觉是 python import 时出现的错误,查看文件/usr/sbin/xend,第51行是“from xen.xend.server import SrvDaemon”,就是这行出错。查看 python 版本[root@glnode04 ~]# python -VPython 2.5查看 python 安装路径[root@glnode04 ~]# which python/usr/local/bin/python查看系统安装的 python 的rpm包版本[root@glnode04 ~]# rpm -q pythonpython-2.4.3-21.el5 从这可以看出 python 版本和 rpm 包所示的版本不一致,这个 rpm 包是 CentOS 5.2 自带的.

系统是CentOS 5.2, 我们发现使用的不是CentOS 5.2 默认安装的 python,默认安装的是 Python 2.4.3,CentOS 5.2 默认将python安装在/usr/bin下。 [root@glnode04 ~]# /usr/bin/python -VPython 2.4.3由此可以想到可能是环境变量 PATH 的设置导致我们在命令行执行 python 时使用的是 /usr/local/bin/python,可能是 PATH 的值中 /usr/local/bin 在 /usr/bin 之前; 检查 ~/.bashrc 发现的确如此,环境变量 PATH 设置是 export PATH=/usr/local/bin:$PATH,将其修改为export PATH=$PATH:/usr/local/bin,然后 source ~/.bashrc,或者退出 shell,重新开启一个 shell,测试 python ,发现使用的是默认版本。[root@glnode04 ~]# python -VPython 2.4.3启动 Xend ,正常,没有问题。[root@glnode04 ~]# xm listError: Unable to connect to xend: No such file or directory. Is xend running?[root@glnode04 ~]# xendusage: /usr/sbin/xend {start|stop|restart}[root@glnode04 ~]# xend start[root@glnode04 ~]# xm listName ID Mem(MiB) VCPUs State Time(s)Domain-0 0 7931 8 r—– 463.9分析原因,是因为 Xen 是python写的,执行 Xen 相关工具时需要调用 python 相关库,如果版本对应不一致,或者库路径不一致,则会出错。

############################################

(2) 使用 virt-install 创建Xen虚拟机时出现错误: ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效

—————————————————————————————-

[root@glnode04 vm02-CentOS-5.5]# virt-install -n vm01-CentOS-5.5 -r 1024 –vcpus=4 -f vm01-CentOS-5.5.img -s 20 –nographic -l :8888/mirrors/CentOS/5.5/Would you like a fully virtualized guest (yes or no)? This will allow you to run unmodified operating systems. no Starting install…Retrieving file .treeinfo 100% |=========================| 417 B 00:00 Retrieving file vmlinuz.. 100% |=========================| 2.0 MB 00:00 Retrieving file initrd.im 100% |=========================| 7.7 MB 00:00 virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效Domain installation may not have beensuccessful. If it was, you can restart your domainby running ‘virsh start vm02-CentOS-5.5’; otherwise, pleaserestart your installation.三, 20 4月 2011 19:21:08 ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效Traceback (most recent call last):File “/usr/bin/virt-install”, line 502, in ?main()File “/usr/bin/virt-install”, line 462, in maindom = guest.start_install(conscb,progresscb)File “/usr/lib/python2.4/site-packages/virtinst/Guest.py”, line 813, in start_installreturn self._do_install(consolecb, meter)File “/usr/lib/python2.4/site-packages/virtinst/Guest.py”, line 834, in _do_installself.domain = self.conn.createLinux(install_xml, 0)File “/usr/lib64/python2.4/site-packages/libvirt.py”, line 573, in createLinuxif ret is None:raise libvirtError(‘virDomainCreateLinux() failed’, conn=self)libvirtError: virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效 —————————————————————————————-############################################解决办法:

只有一条路不能拒绝——那就是成长的路。

安装Xen、创建Xen虚拟机、使用Xen虚拟机过程中经常出现的错误总结

相关文章:

你感兴趣的文章:

标签云: