感谢支持
我们一直在努力

Linux中的虚拟机qemu使用方法

Redflag Workstation 下已经带了qemu


#qemu-img create windows.img 2G #这个就是创建虚拟机磁盘,2G大小


#qemu -hda windows.img -cdrom /dev/acd0 -boot d -m 512 -enable-audio -localtime


-hda 是指定硬盘


-cdrom 指定使用光驱,这个参数后面必须要跟个文件名,可以是物理光驱/dev/hda,可以使用ISO文件,为文件的路径


-m 是指定虚拟机使用的内存大小,如512M


-boot 指定虚拟机启动用的设备,-boot后可以选择的参数是 a ,c ,d .其中a 是指从软盘启动,c 就是用硬盘启动,d 是光驱启动。


-enable-audio


-localtime 使用实际主板bios上的时间。


应该可以顺利的进入虚拟机了,并开始安装了。


Redflag Workstation 下已经带了qemu


#qemu-img create windows.img 2G #这个就是创建虚拟机磁盘,2G大小


#qemu -hda windows.img -cdrom /dev/acd0 -boot d -m 512 -enable-audio -localtime


-hda 是指定硬盘


-cdrom 指定使用光驱,这个参数后面必须要跟个文件名,可以是物理光驱/dev/hda,可以使用ISO文件,为文件的路径


-m 是指定虚拟机使用的内存大小,如512M


-boot 指定虚拟机启动用的设备,-boot后可以选择的参数是 a ,c ,d .其中a 是指从软盘启动,c 就是用硬盘启动,d 当然就是光驱启动了。


-enable-audio


-localtime 使用实际主板bios上的时间。


应该可以顺利的进入虚拟机了,并开始安装了。

安装过程中,要求换盘: 在qemu中按ctrl+alt+2切换到qemu monitor模式 输入?或help可以查看可用命令及使用说明。 (在其他版本的qemu中,运行qemu加载OS后,这个shell就会自动变成qemu monitor模式)


change device filename — change a removable media


如change cdrom /tmp/xp1.iso


常用的快捷键:


ctrl+alt+F 全屏切换


ctrl+alt 鼠标在虚拟机和主机间切换
虚拟机上网设置两种方式:


1. user mode network :
这种方式实现虚拟机上网很简单,类似vmware里的nat,qemu启动时加入-user-net参数,虚拟机里使用dhcp方式,即可与互联网通信,但是这种方式虚拟机与主机的通信不方便。


2. tap/tun network :
这种方式要比user mode复杂一些,但是设置好后 虚拟机互联网 虚拟机主机 通信都很容易
这种方式设置上类似vmware的host-only,qemu使用tun/tap设备在主机上增加一块虚拟网络设备(tun0),然后就可以象真实网卡一样配置它.


前提:


首先内核中支持tap/tuns设备:
Device Drivers —>
Networking support —>
[M] Universal TUN/TAP device driver support


在Redflag Workstation中已经有了支持


如果没有编译内核模块:make modules


将它cp到当前内核的模块目录的相应位置:
cp /usr/src/linux/drivers/net/tun.ko /lib/modules/`uname -r`/kernel/drivers/net
重新建立模块依赖关系:
depmod


再加载就OK了


如果成功了应该存在设备文件 /dev/net/tun


若使用这种方式需要以下几步:
a.需要一个tun/tap的初始化脚本 :
/etc/qemu-ifup :
#!/bin/sh
/sbin/ifconfig $1 172.20.0.1


再给予qemu-ifup x执行权限放在/etc下就可以了,这是有qemu自动执行的
这个脚本只能root用户执行,如果需要普通用户使用qemu,就需要改成sudo /sbin/ifconfig …..再设置sudo相关权限。 启动qemu后,它会在主机上增加一块虚拟网络设备(tun0)


b.设置虚拟机网络参数


和vmware host-only一样:
ip与tun0相同网段,gateway为tun0 ip 其余参数与tun0相同,dns与主机相同:
tun0 : ip :172.20.0.1 broadcast:172.20.255.255 netmask :255.255.0.0
qemu : ip :172.20.0.100 broadcast:172.20.255.255 netmask :255.255.0.0 gateway:172.20.0.1


与host-only一样,这样只实现了虚拟机主机间通信,还需要设置router,nat才可以连上互联网
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -s 172.20.0.0/24 -j MASQUERADE

赞(0) 打赏
转载请注明出处:服务器评测 » Linux中的虚拟机qemu使用方法
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏