Redflag Workstation 下已经带了qemu

#qemu-img create windows.img <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />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