虚拟机QEMU使用参数详解

  • 格式:doc
  • 大小:69.00 KB
  • 文档页数:10

虚拟机QEMU使用参数详解

2010-08-18 12:48:11

标签:虚拟机 QEMU

QEMU它可以工作在linux,windows,FreeBSD和苹果系统上.大家根本都不用担心支持问题.因为其没有UI界面,纯粹是命令行的操作,和vmware等虚拟平台软件相比,它比较难于上手.但是它却对我们掌握系统模块有很大的帮助,所有的外设和一些常用模块,需要我们手动的去使用命令来挂载才能有效运行.很多人都觉得先学习QEMU后,再去用vmware等模拟软件,更易上手。

下面对其的使用做一下介绍:

1.命令参数:

-L dir :指向BIOS和VGA BIOS所在目录(一般我们使用”-L .”)

-hda/-hdb/-hdd/-hdc “文件名” :虚拟机系统安装文件

-cdrom “文件名” :使用“文件名”作为光盘景象(文件应该是ISO类型)

*Windows 下,

可以通过下列命令使用实体光盘: -cdrom //./x: -> x 代表光盘名称/位置例如:-cdrom //./e: -> 使用 E:\ 为光盘*

-fda/-fdb “文件名” :使用“文件名”作为磁盘0/1镜像.

-boot [a|b|c] :使用磁盘a,光盘d,或者硬盘c启动.

-m 容量 :指定内存的大小,单位是MB.

-soundhw c1,„: 使用声卡设备.

-soundhw ? :列出所有可使用的声卡 -soundhw all 使用全部声卡

-usb :允许使用usb设备.

-usbdevice :名字 添加一个usb设备“名字”.

-net nic :创建一块新的网卡.

上面就是常用的命令参数.如果对各种操作系统下的应用有迷惑,可以到这里查找相关资料

2.虚拟系统安装(以在windows下使用QEMU来安装windows XP为例),安装之前,准备三样东西:

2.1.Qemu for windows

(兜兜目前使用的版本为:qemu-0.9.0-windows,现在网速慢,文件6M多,等明天速度快点再传.各位请搜一下吧.)

2.2.qemuwith-kqemu-support点此下载

kqemu是Fabrice Bellare专门为linux核心而设计的开源加速附加程序,目的就是为了加快qemu的子系统运行速度.

在X86的硬件平台上模拟x86的操作系统可以飙到真实机器速度.

直接用QEMU来安装或者运行系统的话,速度会很慢.用kqemu会改善很多.右键点击kqemu.inf,选择“安装”,

然后在CMD窗口下输入命令:net start kqemu。服务启动后即可运行启动qemu的命令,

注意,启动命令中要加参数-kernel-kqemu.

把压缩包里的两个文件:qemu:qemu-img:覆盖到qemu-0.9.0-windows的文件夹的同名文件.

2.3.一份windows XP的镜像安装文件.ISO文件.

3.万事具备了.我们开始吧.首先把qemu for win的包解到某个目录下.兜兜以F根目录为例:F:\qemu

然后在F盘下新建目录:F:\system-virtual\windowsxp\ 该目录用来存放接下来要安装的windowsxp系统文件的.

3.1.打开CMD窗口,切到F盘的qemu程序目录下.然后输入命令:

qemu-img create -f qcow f:\system-virtual\windowsxp\windowsxp.img 8G

create 参数表示创建windowsxp所需的虚拟磁盘

-f 参数表示创建文件格式,后边所带的子参数qcow 表示qemu镜像格式

f:\system-virtual\windowsxp\windowsxp.img为虚拟磁盘文件放置路径及名称

8G为所创建虚拟机文件的上限大小,也就是虚拟机的硬盘大小

建议大家不要创建qcow格式的磁盘文件.它生成的磁盘文件比较占用空间.该命令是常规命令.

兜兜建议使用VMWare的磁盘文件来安装虚拟系统.命令如下:

qemu-img create -f vmdk f:\system-virtual\windowsxp\windowsxp.vmdk 8G

两种创建方式,在使用的过程中没有很大区别,唯一的区别在于磁盘占用率上.随各位自己喜欢咯.

3.2.好了.给虚拟系统的硬盘分区已经分割好了.什么?什么时候分割的?晕!

上面那一步创建虚拟磁盘文件就是为新的系统准备空间啊!接下来开始安装系统了.

大家可以简单回想一下,在裸机或者vmware中安装新系统,需要拿些东西?

光驱,指定内存大小,指定硬盘空间„.需要指定USB,声卡..等等吗?暂时不需要的.

看下面这段安装时候要用到的命令吧.

qemu.exe -kernel-kqemu -L . -m 512 -hda f:\system-virtual\windowsxp\windowsxp.vmdk -cdrom

e:\my-lab\iso\windowsxp-en.iso -boot d

-kernel-kqemu 加快qemu速度

-m 512 为虚拟机分配512m内存

-hda f:\system-virtual\windowsxp\windowsxp.vmdk 系统安装到哪里去,就安装到刚才建立的虚拟磁盘文件中去

-cdrom e:\my-lab\iso\windowsxp-en.iso 为qemu的虚拟光驱中插入光盘镜像

-boot d 设置qemu的BIOS由光驱启动.

把这段命令输入到记事本里,然后保存在qemu for win程序的根目录里.命名为:Install windowsxp.bat .完全是为了方便才这样的,如果你不嫌麻烦,你可以直接进入CMD,切到qemu for win的目录下,输入那一段命令,就会弹出窗口,开始windowsxp的安装过程了.

安装的问题,兜兜就不赘述了.这里要注意的是,当你把鼠标定位到了虚拟windowsxp窗口中,要把鼠标释放出来,需要按组合键: ctrl+alt.

4.安装过程完毕了.关闭虚拟机.你可以直接XX关闭,建议按照windows的正常关机流程来操作,当虚拟系统关闭,窗口也会消失.接下来,该编写虚拟系统运行的命令了.同样的,建议使用批处理的方式.免得每次要启动系统都需要输入一大串命令.

命令其实和安装雷同.如下:

qemu.exe -kernel-kqemu -L . -m 512 -hda f:\system-virtual\windowsxp\windowsxp.vmdk -boot c

保存到qemu for win程序目录下,命名为:start windowsxp.bat

如果你想挂载光驱,在命令里补上-cdrom 就可以了.当然,你如果需要挂载其他的硬件设备,加上相应的参数即可.参数在文上部有说明.

qemu.exe

-m 512

-net nic,model=ne2k_pci

-net nic,model=pcnet

-soundhw ac97,pcspk

-usb -parallel none -serial none

-hda winxp.img

-hdb h:

-fda fdboot.img

-cdrom bootcd.iso

-rtc base=2009-01-01T16:00:21

-vnc 127.0.0.1:0

-net user,hostfwd=tcp::5555-:23

-boot menu=on

以上命令模拟了一台

含有512兆内存,

2个不同的网络卡,

1个ac97声卡,1个PC 喇叭的电脑。

它支持USB,没有并口和串口,

有2块硬盘,第一硬盘使用安装有windows xp的winxp.img映像,第二硬盘使用宿主电脑的h:分区(只读),

1个载入FreeDOS的软驱,

1台载入bootcd.iso的光驱。

这台电脑的时间设定为2009年一月一日16点21秒,

特殊的是这台模拟电脑必须通过VNC软件控制,

并且将模拟电脑的23号端口(telnet)转发到宿主电脑的5555端口,

在模拟电脑启动的时候有一个菜单选择要启动的设备。

Qemu使用手册

快速启动

在我们下载并解压linux镜像(linux.img)以后,我们可以输入下面的命令来启动:

qemu linux.img

这样Linux就会启动并会展示给我们一个提示.

调用

用法:qemu [option] [disk_image]

disk_image是代表IDE的硬盘的硬盘镜像.

一般选项:

-M machine

选择模拟的机器(我们可以输入-M?提到一个模拟的机器列表)

-fda file

-fdb file

使用file作为软盘镜像.我们也可以通过将/dev/fd0作为文件名来使用主机软盘.

-hda file

-hdb file

-hdc file

-hdd file

使用file作为硬盘0,1,2,3的镜像.

-cdrom file

使用文件作为CD-ROM镜像(但是我们不可以同时使用'-hdc'和'-cdrom').我们可以通过使用'/dev/cdrom'作为文件名来使用主机的CD-ROM.

-boot [a|c|d]

由软盘(a),硬盘(c)或是CD-ROM(d).在默认的情况下由硬盘启动.

-snapshot

写入临时文件而不是写入磁盘镜像文件.在这样的情况下,并没有写回我们所使用的磁盘镜像文件.然而我们却可以通过按下C-a s来强制写回磁盘镜像文件.

-m megs

设置虚拟内存尺寸为megs M字节.在默认的情况下为128M.

-smp n

模拟一个有n个CPU的SMP系统.为PC机为目标,最多可以支持255个CPU.

-nographic

在通常情况下,Qemu使用SDL来显示VGA输出.使用这个选项,我们可以禁止所有的图形输出,这样Qemu只是一个简单的命令行程序.模拟的串口将会重定向到命令行.所以,我们仍然可以在Qemu平台上使用串口命令来调试Linux内核.

-k language

使用键盘布局语言(例如fr为法语).这个选项只有在不易得到PC键盘的情况下使用.我们在PC/Linux或是PC/Windows主机不需要使用这个选项.可用的布局如下:

ar de-ch es fo fr-ca hu ja mk no pt-br sv

da en-gb et fr fr-ch is lt nl pl ru th

de en-us fi fr-be hr it lv nl-be pt sl tr

默认的为en-us

-audio-help

这个选项将会显示声音子系统的帮助:驱动列表以及可调用的参数.

-soundhw card1,card2 .... or -soundhw all

允许声音并选择声音硬件.使用?可以列出所有可用的声音硬件