XP下使用QEMU虚拟机实战_mephp的博客-程序员秘密

技术标签: 虚拟机  image  Linux  xp  磁盘  windows  user  

安装QEMU安装版

安装KEMU加速模块,安装完成默认已经启动了KQEMU服务。
如果没有启动就在 (开始→运行→net start kqemu)启动KQEMU服务,这样以后运行虚拟机速度就快多了。
启动QEMU后可以在QEMU控制台输入(info kqemu)来查看KQEMU的运行状态。

进入QEMU的安装目录创建一个 批处理.BAT 文件 (以后编辑QEMU的启动参数就靠它了)

qemu-img.exe create harddisk.img 1999M
创建一个1999M的raw格式的虚拟硬盘镜像
当您的主机操作系统是Windows 98/ME ,最大规模的硬碟影像1999MB
当您的主机操作系统是Windows 2000/XP中使用NTFS文件系统,您可以使用超过4GB的文件

qemu-img.exe create -f qcow harddisk.qcow 10G
创建一个QCOW格式的硬盘硬盘镜像,这样的格式可以随使用的空间改变镜像的大小

qemu-img.exe create -f qcow2 harddisk.qcow2 10G
创建一个QCOW2格式的硬盘硬盘镜像,这样的格式可以使用VM快照

qemu-img.exe convert harddisk.img -O qcow harddisk.qcow
将raw格式的虚拟硬盘转换为qcow格式

qemu-img.exe convert -f raw harddisk.img -O qcow2 harddisk.qcow2
将raw格式的虚拟硬盘转换为qcow2格式


启动QEMU :

qemu.exe -L ./pc-bios -m 256 -boot a -fda floppy.img -hda harddisk.img -cdrom cdimage.iso -soundhw all -localtime

参数:
-L : bios位置 (.表示当前跟目录)

-m : 内存大小(单位是Mbyte) 在默认的情况下为128M

-boot : 启动设备(boot device), 包括三种, 分别为 floppy(a), hard disk(c), CD-ROM(d) 在默认的情况下由硬盘启动

-fda : 软盘镜像(floppy image)标准的软盘镜像文件
(-fda/-fdb 指的是软盘0/1镜像)

-hda : 硬盘镜像(hard disk image)硬盘镜像文件
(-hda/-hdb/-hdd/-hdc 指的是硬盘0/1/2/3)

-cdrom : 光盘镜像(CD-ROM image)ISO镜像文件

注意:cdrom 将固定使用 hdc 这个位置,所以 -hdc 不能和 -cdrom 一起使用

-soundhw all : 使用全部声卡,all默认使用 es1370虚拟声卡, 如不加参数则默认不使用声卡
可选择使用不同的虚拟声卡:
-soundhw sb16
-soundhw pcspk
-soundhw adlib
-soundhw es1370
-soundhw ? 可以列出所有可使用的声卡列表

-std-vga:将显卡模拟成一个同时包含了 VESA Bochs 扩充的标准 VGA 卡,预设则模拟为 CL-GD5446 PCI 显示卡

-localtime : 使用真实时间,默认是使用 UTC 时间

-full-screen :以全屏方式启动虚拟机

-usb : 允许使用usb设备

-smp n : 模拟一个有n个CPU的SMP系统,最多可以支持255个CPU.

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

-kernel-kqemu :使用kqemu加速,加这个参数时在DOS下无法运行GHOST或PQ,最好在安装完系统后才使用这个参数。

-no-kqemu :不使用kqemu加速

-win2k-hack:当安装Windows 2000时可以使用这个选项来避免磁盘错误.在安装上Windows 2000系统,我们就不再需要这个选项(这个选项降低IDE的传输速度).



qemu 上网需要兩個 -net參數

-net nic -net user :如果不加参数默认为Realtek RTL8029虚拟网卡,和DHCP方式上网

-net nic:仿真网卡,默认为虚拟rtl8029网卡
可选择使用不同的虚拟网卡:
-net nic,model=ne2k_pci -net user
-net nic,model=rtl8139 -net user
-net nic,model=pcnet -net user

-net user:采用DHCP client 方式分享主机网络资源

副参数:同时按下Ctrl-Alt-2进入QEMU监视器
在监视器中使用
system_reset:重新启动虚拟机
sendkey keys:传送某个键击给模拟器。使用 - 来连结复合键。例:sendkey ctrl-alt-delete将会传送 <Ctrl><Alt><delete> 给模拟器
stop:暂停模拟器
ccont:继续模拟器
qquit:关闭模拟器
同时按下Ctrl-Alt-1返回模拟系统

使用本地资源:
qemu.exe -L . -fda //./a:
把物理软驱A盘作为QEMU的软驱使用

qemu.exe -L . -cdrom //./g:
把物理光驱G盘作为QEMU的光驱使用

qemu.exe -L . -hdb //./PhysicalDriveN
使用物理硬盘驱动器作为QEMU的硬盘驱动器使用
后面的N可以使用(0,1,2,...)可以在我的电脑→右键→管理→磁盘管理查看
/可以使用反斜线/,
Windows 98/Me不被支持
请注意,如果您没有多重开机环境,请不要从您的系统硬盘启动,这样会破坏您的操作系统

qemu.exe -L . -hda win2k.img -hdb fat:myfolder
虚拟VFAT能够访问主机目录作为一个硬盘使用,
注意:在Windows上运行目录路径不起作用,您可以设置一个目录名是目录中的文件夹
myfolder 必须是同一个目录中的文件夹
如果目录中有中文文件名则显示为乱码
MS-DOS模式( Windows 98的启动软盘)不能看到目录中的文件

保存和恢复虚拟机的状态
savevm和loadvm除了QCOW2格式不能用于其他格式,可保存多个快照并恢复它们
qemu.exe -L ./pc-bios -m 256 -boot c -hda harddisk.qcow2 -soundhw all -localtime
在QEMU控制台输入
savevm 1234
即可保存一个名为1234的VM快照
在QEMU控制台输入
info snapshots
可查看这个硬盘创建的快照
输入
loadvm harddisk

loadvm 1
可恢复VM快照

或在启动时使用参数恢复它们,如:
qemu.exe -L ./pc-bios -hda harddisk.qcow2 -loadvm 1234

qemu.exe -L ./pc-bios -hda harddisk.qcow2 -loadvm 1
您也可以删除VM快照
在QEMU控制台输入
delvm 1234

delvm 1
如果你忘记了快照的名字可以使用
qemu.exe -L ./pc-bios -hda harddisk.qcow2 -loadvm option
然后进入控制台查看快照并恢复它们
如果你没有保存快照,你所做的更改都将丢失

或者:

qemu-img.exe create -b harddisk.qcow -f qcow harddisk.qcow2
当你安装好了一个虚拟机后,你可以在其上创建一个qcow2格式的"叠加镜像"

qemu.exe -L ./pc-bios -m 256 -boot c hda harddisk.qcow2 -soundhw all -localtime
现在你可以运行叠加镜像

叠加镜像非常小,只保存对原始镜像作出的改变,如果你想回到安装后的初始状态,
只需简单地删掉叠加镜像,然后创建一个新的.


在使用过程中更换软盘和光盘镜像:
同时按下Ctrl-Alt-2进入QEMU监视器
在监视器中使用
change fda filename.img

change fda d:/tmp/yourfile.img
更换软盘镜像;
在监视器中使用
eject cdrom
change cdrom filename.iso

eject cdrom
change cdrom d:/tmp/yourcdrom.iso
来改变光盘镜像
最后输入
info block
完成操作按下Ctrl-Alt-1返回操作系统

在 QEMU 的系统里,可以按下 <Ctrl><Shift>来离开 QEMU;
按下 <Ctrl><Shift><f> 来进入全屏幕画面

参考资料:
http://bellard.org/qemu/
http://zh.wikipedia.org/wiki/QEMU
http://wiki.debian.org.tw/index.php/QEMU
http://www.xuniji.com/qemu/view.asp?id=3
http://blog.chinaunix.net/u/12679/showart_432398.html
http://www.cn-dos.net/forum/viewthread.php?tid=37420&sid=K24Uvv

原文:http://user.qzone.qq.com/281975965/blog/1232534405

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/mephp/article/details/5123132

智能推荐

pycharm中使用清华镜像源方法(详细附图)_一只努力向上的佳佳怪的博客-程序员秘密_pycharm清华源

pycharm中使用阿里镜像源方法很多小伙伴因为导入包的时候因为下载速度过慢而头疼,这是因为pycharm下载包的默认源是国外网站(https://pypi.python.org/simple),这时候我们可以用清华镜像或者其他镜像源1、首先进入设置界面(File-Settings)2、进入安装包的界面,点击右边的+号3、点击Manage Repoditories,这个就是设置仓库4、添加清华镜像源,点击OK5、配置成功...

PyCharm vs Spyder:两个Python IDE的快速比较_cumei1658的博客-程序员秘密

If you have followed my blog you may have noticed that a lot of focus have been put on how to learn programming (particularly in Python). I have also written about Integrated Development Environments ...

961计算机组成原理,2018考研华中科技大学961计算机组成原理(二)考试大纲_祈盟的博客-程序员秘密

华中科技大学研究生考试大纲为广大想报考华中科技大学的考生划出了大致的考试范围以及试卷的结构和题型,是广大考研学生的重要参考文件之一。下面是研招网小编为大家整理的最新2018考研华中科技大学961计算机组成原理(二)考试大纲,以供大家参考。硕士研究生入学考试大纲――《计算机组成原理(二)》科目代码(961)一、考试性质《计算机组成原理》是报考我校协和医院生物医学工程学硕士的专业基础课,旨在考察学生是...

JS本地存储和会话存储的区别_Serena_tz的博客-程序员秘密_本地存储和会话存储的区别

1、localStorage本地存储localStorage生命周期是永久,这意味着除非用户显示在浏览器提供的UI上清除localStorage信息,否则这些信息将永远存在。存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。2、sessionStorage会话存储sessionStorage仅在当前会话下有效,关闭页面或浏览器后被清除。存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。源生接口可以接受,亦可再次封装来对Object

校本课程中计算机工作原理,信息技术校本课程纲要_成都蹦迪阿亮的博客-程序员秘密

《信息技术校本课程纲要》由会员分享,可在线阅读,更多相关《信息技术校本课程纲要(4页珍藏版)》请在人人文库网上搜索。1、信息技术校本课程纲要课程名称:如何构建家庭局域网课程类型:科学素养类教学材料:自编授课课时: 30 课时主讲教师:张刚授课对象:初一、初二学生一、 课程目标:(一)、知识与技能:1、通过本课程的学习, 培养学生在信息技术方面的动手能力, 拓 展学生的知识面,从而提高学生的综合信息...

产品经理看哪吒之魔童降世_weixin_30820077的博客-程序员秘密

前戏哪吒在这个暑假,一下子变成了红人。本来他人是红色的,这个也许是他能红的原因吧,一个小朋友这样说到。其实,对于整天对着电脑和媒体的程序员来说,哪吒的出现概率太高了,博客有介绍的,朋友圈内推荐的,同事饭后八卦的。都红成西红柿了,不想看都难。其实,每年出来那么多电影,能让大家广泛讨论并且有那么大群众基础的作品并不多。无论从什么角度,我都要去看一下。 看看这个新出的作品为什么火的一塌糊度...

随便推点

华中科技大学计算机组成原理慕课第四章 存储系统(一) 单元测验(习题+答案+详细解析)_Code_流苏的博客-程序员秘密_sram中的存储单元

华中科技大学计算机组成原理慕课第四章 存储系统(一) 单元测验(习题+答案+详细解析)

Pycharm IDE安装pandas库失败解决方法_ChiFanLAM的博客-程序员秘密_安装pandas库失败

Pycharm IDE安装pandas库失败解决方法作为一名python新手,我们利用Pychram IDE进行编程时总是会遇到一些配置上的难题。比如,在配置第三方库文件时,我们会遇到漫长的等待安装时间后,却发现安装失败!!!具体的安装失败错误提示为:Error occur when installing " "找遍了各种方法,发现下面的解决方案真的屡试不爽:进入Pycharm的terminal:输入:python -m pip install -upgrade pip或者在P

linux 挂载存储命令,Linux挂载存储及命令_知乎汽车的博客-程序员秘密

常用命令一、网卡部分1、确认IP地址命令ifconfigifconfig -aifconfig ethX2、关闭命令ifdown ethXservice network stop3、开启命令ifup ethXservice network start4、重启命令service network restart/etc/init.d/network restart5、修改IP地址命令vi /etc/s...

华东理工大学计算机组成原理试题,华中科技大学计算机组成原理1999年考研真题考研试题硕士研究生入学考试试题(原华东理工大学)..._Z-JO的博客-程序员秘密

华中理工大学1999硕士入学计算机组成原理真题一.填空(每空1分,共20分)1.计算机中数值数据表示长采用的格式有 和 两种。2.已知十进制数,则相应的二进制数X= ,[X]补= 。3.若X=-0.X1X2……Xn,则[X]原= ,[-X]补= 。4.主机与外部设备之间以软件方式控制信息交换的方式有 ...

python try catch finally_Java try catch finally异常处理(Exception)_金雪锋的博客-程序员秘密

1、Java Exceptions执行Java代码时,可能会发生不同的错误异常:程序员编写的编码错误,由于输入错误引起的错误或其他不可预见的情况。发生错误时,Java通常会停止并生成错误消息。 技术术语是:Java将引发异常(引发错误)。2、Java try catchtry语句允许定义要执行的错误代码块。如果在try块中发生错误,则catch语句允许定义要执行的代码块。try和catch关键字...

java异常处理_weixin_34228387的博客-程序员秘密

可直接看这篇文章即可:http://www.importnew.com/26613.htmljava异常类图非检查异常(unckecked exception):Error 和 RuntimeException 以及他们的子类。javac在编译时,不会提示和发现这样的异常,不要求在程序处理这些异常。所以如果愿意,我们可以编写代码处理(使用try…catch…finally)这样的异常,...

推荐文章

热门文章

相关标签