安装qemu

最近在自己在VMware Workstation上安装了一个CentOS-6.5-x86_64虚拟机,在其上用纯命令行执行的方式来创建虚拟机镜像磁盘、启动虚拟机并安装win7系统,然后安装qxl显卡驱动、virtio网卡驱动,创建了一个 采用qxl显卡,virtio网卡的win7虚拟机。在此过程中,边操作边写,也记录了一些当中碰到的问题。
记录一下操作流程,留待之后查询。
本文用最原始的方法了解虚拟机的创建流程,了解了原理后,之后可以用virt-manager、libvirt的封装来管理虚拟机。
注意:这些操作仅供参考,因为只是在特定场景(CentOS-6.5)下的操作,你可能会遇到其它问题。

1.下载qemu源码
#wget http://wiki.qemu-project.org/download/qemu-1.4.2.tar.bz2
#tar jxf qemu-1.4.2.tar.bz2

2.安装必要的开发包
#yum install libuuid-devel.x86_64
#yum install libaio-devel.x86_64
#yum install spice-server-devel.x86_64

2.执行configure
#cd qemu-1.4.2
#./configure --prefix=/usr/local/ --target-list=x86_64-softmmu --enable-vnc --disable-xen --enable-vnc-tls --enable-vnc-sasl --enable-kvm  --enable-linux-aio --disable-docs --enable-vhost-net --disable-libiscsi --disable-smartcard-nss --enable-debug  --enable-spice --enable-uuid
#make -j4
#make install

3.创建磁盘镜像
#qemu-img create -f qcow2 win7_x86.qcow2 60G

4.放通5913端口
#/sbin/iptables -I INPUT -p tcp --dport 5913 -j ACCEPT
#/etc/rc.d/init.d/iptables save 

5.下载spice客户端
https://fedorahosted.org/released/virt-viewer/virt-viewer-x64-0.6.0.msi
注意:在连接虚拟机时,URL格式为:spice://192.168.1.123:5913

6.启动虚拟机,安装Windows系统
/usr/local/bin/qemu-system-x86_64 -hda win7_x86.qcow2 -boot d -m 1024 -cdrom /media/cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso -spice port=5913,disable-ticketing -enable-kvm

7.安装完后,重新启动虚拟机,安装spice-guest-tools,增强spice客户端的用户体验
/usr/local/bin/qemu-system-x86_64 -hda win7_x86.qcow2 -boot c -m 1024  -spice port=5913,disable-ticketing -enable-kvm -vga qxl -cdrom /media/spice-guest-tools-0.74.iso

8.采用TAP虚拟机网卡,桥接模式来配置qemu虚拟机
1)关闭NetworkManager服务 /*这一步必须的,否则创建网桥会失败*/
#chkconfig NetworkManager off
#service NetworkManager stop

2)增加一个网桥,并将eth0物理网口加入网桥中
#vim /etc/sysconfig/network-scripts/ifcfg-br0

DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.123
NETMASK=255.255.255.0 
GATEWAY=192.168.1.1
DELAY=0
IPV6INIT=no
USERCTL=no


#vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
HWADDR=00:0C:29:DF:B5:6B
TYPE=Ethernet
UUID=29d5e780-bed2-48cf-a8e8-cb22fddfef9f
ONBOOT=yes
NM_CONTROLLED=yes
IPV6INIT=no
BOOTPROTO=static
IPADDR=192.168.1.123
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
BRIDGE=br0


9.创建两个回调脚本,qemu-ifup和qemu-ifdown
qemu在不指定脚本具体路径的情况下,默认路径是/etc/qemu-ifup和 /etc/qemu-ifdown。

#vi /etc/qemu-ifup

#!/bin/sh
switch=br0

if [ -n "$1" ]
then
    ip link set $1 up
    sleep 1
 
    /usr/sbin/brctl addif ${switch} $1
 
    exit 0
else
    echo "Error: no interface specified"
    exit 1
fi


#vi /etc/qemu-ifdown

#!/bin/sh
switch=br0 

if [ -n "$1" ]
then
    ip link set $1 down
    sleep 1
 
    /usr/sbin/brctl delif ${switch} $1
 
    exit 0
else
    echo "Error: no interface specified"
    exit 1
fi


创建完记住要修改成可执行的权限:
#chmod a+x /etc/qemu-ifup
#chmod a+x /etc/qemu-ifdown


10.启动一个带virtio网卡的虚拟机
#/usr/local/bin/qemu-system-x86_64 -name win7_x86 -hda win7_x86.qcow2 -boot c -m 1024 -spice port=5913,disable-ticketing -enable-kvm -vga qxl -net nic,model=virtio -net tap,ifname=tap0

至此,一个采用qxl显卡,virtio网卡的win7虚拟机已经可以用了。




gdb调试qemu时,提示错误:Missing separate debuginfos,解决办法:
1.将/etc/yum.repos.d/CentOS-Debuginfo.repo中[debug]节点下的enabled置为1;
2.然后执行以下命令:
#debuginfo-install celt051-0.5.1.3-0.el6.x86_64 cyrus-sasl-gssapi-2.1.23-13.el6_3.1.x86_64 cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 cyrus-sasl-md5-2.1.23-13.el6_3.1.x86_64 cyrus-sasl-plain-2.1.23-13.el6_3.1.x86_64 db4-4.7.25-18.el6_4.x86_64 glib2-2.26.1-3.el6.x86_64 glibc-2.12-1.132.el6.x86_64 gnutls-2.8.5-10.el6_4.2.x86_64 keyutils-libs-1.4-4.el6.x86_64 krb5-libs-1.10.3-10.el6_4.6.x86_64 libaio-0.3.107-10.el6.x86_64 libcom_err-1.41.12-18.el6.x86_64 libcurl-7.19.7-37.el6_4.x86_64 libgcrypt-1.4.5-11.el6_4.x86_64 libgpg-error-1.7-4.el6.x86_64 libidn-1.18-2.el6.x86_64 libjpeg-turbo-1.2.1-1.el6.x86_64 libpng-1.2.49-1.el6_2.x86_64 libselinux-2.0.94-5.3.el6_4.1.x86_64 libssh2-1.4.2-1.el6.x86_64 libtasn1-2.3-3.el6_2.1.x86_64 libuuid-2.17.2-12.14.el6_5.x86_64 ncurses-libs-5.7-3.20090208.el6.x86_64 nspr-4.10.0-1.el6.x86_64 nss-3.15.1-15.el6.x86_64 nss-softokn-freebl-3.14.3-9.el6.x86_64 nss-util-3.15.1-3.el6.x86_64 openldap-2.4.23-32.el6_4.1.x86_64 openssl-1.0.1e-15.el6.x86_64 pixman-0.26.2-5.el6_4.x86_64 spice-server-0.12.4-6.el6_5.2.x86_64 zlib-1.2.3-29.el6.x86_64

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值