1.安装qemu软件包。 FC7的安装盘里已经带有qemu,使用rpm安装即可。
rpm -ivh qemu-0.9.0-2.fc7.x86_64.rpm
2.创建虚拟硬盘。用dd创建一个数据文件即可。
dd if=/dev/zero of=linux.img bs=1024 count=8000000
3.安装Fedora 6。先把光盘放进光盘(直接在-cdrom后面指定iso文件也行)。-boot d表示从光盘起动。接下来和正常安装没有什么差别。
qemu -hda /work/qemu/linux.img -cdrom /dev/cdrom -boot d
4.运行虚拟机。记得这次要用boot c,从硬盘起动。
qemu -hda linux.img -boot c -localtime -m 256 -usb
5.配置网络。网络不需要特殊配置,在GUEST机上使用DHCP就OK了,它获得的IP地址是10.0.2.15。
我发现GUEST机可以用SSH访问HOST机,GUEST机也可以通过HOST机访问外网, 但HOST机不能访问GUEST机,而且两者都PING不通对方。
6.把GUEST的GUI定向到HOST机上。
GUEST机是在虚拟机上运行的,速度有点慢,为了减轻它的负载,我决定把GUI显示到HOST上。本来这个很简单,通过DISPLAY环境变量就行了。不过,没有想的那样顺利。
我的HOST机有两块网卡,一个网卡接笔记电脑,IP是192.168.0.1,另外一个通过天威上外网,IP是用DHCP获得的。
在GUEST机上:export DISPLAY=192.168.0.1:0
在HOST机上:xhost +10.0.2.15
但在GUEST上运行gedit,总是报告打开显示设备失败,真是奇怪。后来用ps查看 Xorg 的运行参数,发现有-nolisten tcp一项,原来X不支持TCP连接。
修改 /usr/share/gdm/defaults.conf中的DisallowTCP为false,让其支持TCP连接。
reboot之后重新再试,发现还是不行。打开/var/log/Xorg.0.log,发现里面的错误信息竟是rejected from IP 192.168.0.1。奇怪,IP为什么是HOST的IP而不是GUEST的IP呢?先不管它,用xhost把 192.168.0.1也加入进去吧。
在HOST机上:xhost +192.168.0.1
再运行
gedit,一切
OK了,界面显示到
HOST上。