如何在Qemu虚拟机中安装Windows XP系统
作者:ar_wen2402851455 | 2021-08-09 01:49
qemu是一个跨平台的免费的模拟机,包括Linux系列、MacOS系列、FreeBSD系列、Windows系列等等作业系统都可以模拟。我也是第一次使用,走了不少弯路,现在总结一下。官方主站:http://fabrice.bellard.free.fr/qemu/(内地电信屏蔽了)目前最新版是0.90,这里
qemu 是一个跨平台的免费的模拟机,包括Linux系列、Mac OS系列、FreeBSD系列、Windows系列等等作业系统都可以模拟。
我也是第一次使用,走了不少弯路,现在总结一下。
官方主站: http://fabrice.bellard.free.fr/qemu/ (内地电信屏蔽了)
目前最新版是0.90, 这里有windows版下载 http://www.h7.dion.ne.jp/~qemu-win/
但是如果机器是win98,无法使用这一版本,只能使用原来的0.8.2版。
如果有现成的镜像,直接从命令行启动即可。例如:
qemu -L . harddisk.img
参数 -L 指定虚拟bios环境路径,一般都放在同一目录下,所以用 -L . 就行了(注意大写)
默认使用128M 仿真内存,如果要自定义内存体大小可用 -m 参数,如:
qemu -L . -m 64 linux.img
使用软碟镜像,并引导:
qemu -L . -fda floopy.img -boot a
可用-fda -fdb 参数指定两张软碟镜像,-boot 可以指定从软驱、光驱引导
如果使用多个硬碟,可选参数 -hda,-hdb,-hdc,-hdd
使用光碟,参数 -cdrom
2000/xp的机器,qemu支持直接访问主机设备,如光驱,软驱。98/me不支持。
下面介绍我在98下使用QEMU安装XP的经过:
首先用配套工具qemu-img.exe 创建一个新的磁盘镜像
qemu-img create -f qcow mydisk.img 1000M
指定使用qcow格式创建的镜像是动态的,也就是随著使用过程改变大小。比如上面的1000M大小空镜像,实际占用不到几K,当向其中装入内容后才随之增大。
(qemu 也兼容VMware 的vmdk格式镜像。)
安装windows之前先要对磁盘分区、格式化。呵呵,我们论坛的DOS启动盘很多随便哪一个就可以做这个工作。我用的工具是Disk Genius
qemu -L . mydisk.img -fda diskgen.img -boot a
在qemu中使用Disk Genius,和DOS中一样速度上完全没有差别,甚至更快一些。
本来我是想通过GHOST的方式安装系统,但是经过一整天的摸索,我的结论是:
win9x + qemu0.82 +ghost 7.5以上版本都不能正常运行。所以只能采用常规安装。
找一张XP安装光碟镜像,从光驱引导开始安装:
qemu -L . mydisk.img -cdrom xp.iso -boot d
顺别说一下我的主机配置为 P4 1.7G 256M
这样从QEMU中安装XP总共花了35分钟,还算很快。
然后就可以运行XP了~当然这个XP的速度明显下降,主要是内存资源紧张。如果主机内存体比较大可以让QEMU多分一点。
QEMU可以仿真多种声卡,我让XP使用了ENSONIQ AudioPCI ES1370 声卡
qemu -L . mydisk.img -soundhw es1370
再次启动XP,就可以听到声音了~
在QEMU 中上网
在网上有许多文章 主机都是XP或LINUX,用9x相对困难一些。本来我的机器上是双系统一个是winME lite 我在这上面折腾了一天也没能联网。后来换到另一个完全安装的win98联网才成功的。
qemu 需要两个 -net参数
-net nic 仿真网卡 ,我采用的是RTL8139
-net user 采用DHCP client 方式分享主机网络资源
qemu -L . mydisk.img -net user -net nic,model=rtl8139
进入XP,在控制面板/网络连接 设置 IP,DNS都是自动选择
本地连接成功后会自动分配IP地址10.2.0.15,这时候就可以访问internet了
在使用途中更换光碟
如果已经进入QEMU仿真系统还要换另外的光碟镜像,首先在系统中弹出光碟。ctrl+alt+2 切换到QEMU控制台 输入 change cdrom new.iso 然后ctrl+alt+1 返回系统新的光碟就已经装上了。
第三方工具
有一个比较流行的加速器kqemu ,但不兼容Win98 所以最好使用qemu的 -no-kqemu 参数
英国人做了一个图形界面QEMU Manager,用来仿真多个系统时候比较方便。不过我认为在Win98下,还是用命令行比较稳定。
QEMU 的确是非常优秀的系统仿真工具,推荐大家使用。
推荐阅读
-
如何解决《Stataforeach回归循环错误》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《使用okHttp信任所有证书》经验,为你挑选了5个好方法。 ...
[详细]
-
如何解决《mock.patch()没有修补类调用函数调用内的几个级别的类》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《如何找到R中最长的相同数字》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《如何在PX中设置DP的高度和宽度》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《如何使用Bootstrap在选项卡组件的末尾显示文本/按钮?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《如何在Spring数据JPA中做AND和多个OR参数方法》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《xcode6.1更新后找不到#import<libxml/tree.h>文件》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《在Go切片中,为什么s[lo:hi]在元素hi-1处结束?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《Rust没有运行helloworld示例》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《如何在创建新类时指定超类》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《Google协作平台API全文搜索不适用于非西方语言》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《opencv中的filter2D真的可以完成它的工作吗?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《为什么普通字符串可以用作文件句柄?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《Python中的路径查找效率》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《位置"0"(键)中的项目未被删除,为什么?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《使用交互模式'gitstashapply'》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《以root身份运行notify-send》经验,为你挑选了2个好方法。 ...
[详细]
-
如何解决《'require'关键字未被webstorm识别》经验,为你挑选了3个好方法。 ...
[详细]
-
如何解决《什么是从dict中获取项目的简单方法,如果没有找到,可以从另一个dict获得?》经验,为你挑选了2个好方法。 ...
[详细]
ar_wen2402851455
这个屌丝很懒,什么也没留下!