热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在UBUNTU上安装XP(QEMU、KVM)

安装KVM1.安装sudoapt-getinstallqemukernel-packagelinux-sourcekqemu-sourcebuild-essential2.Qemu的二

安装KVM

1.安装
sudo apt-get install qemu kernel-package linux-source kqemu-source build-essential


2.Qemu的二进制程序已经安装,但Qemu加速器安装的是源码,所以要加以编译

cd /usr/src/linux
sudo module-assistant prepare kqemu
sudo module-assistant build kqemu
sudo module-assistant install kqemu
sudo depmod -a


3.载入kqemu模块

sudo modprobe kqemu
sudo mknod /dev/kqemu c 250 0
sudo chmod 666 /dev/kqemu

这一步如果要永久保存的话
• Configure udev to create the /dev/kqemu device node upon loading the kqemu module:
o Create /etc/udev/rules.d/60-kqemu.rules
gksu gedit /etc/udev/rules.d/60-kqemu.rules
with the following content:
KERNEL=="kqemu", NAME="%k", MODE="0660", GROUP="kqemu"
o Change the content of /etc/modprobe.d/kqemu to:
options kqemu major=0
• Create a group "kqemu" and add all users who should be allowed to use QEMU with acceleration to this group:
sudo addgroup --system kqemu
sudo adduser myUser kqemu
• Make sure to update your environment before proceeding to reflect the fact, that your user is now part of the kqemu group (for example by logging in and out).

4.创建windows虚拟硬盘
qemu-img create -f qcow windows.img 2G

(这里的2G大小可以自己设置,使用qcow文件格式,因此它根据用户使用而增大减小,但最大上限为2G)

5.从光驱安装windows

qemu -localtime -cdrom /dev/cdrom -m 384 -boot d windows.img

(同样也可以从硬盘镜像安装

qemu -localtime -cdrom cdimagefile.iso -m 384 -boot d windows.img

这里的-m 384是指定内存,384 MB是很好的XP最小内存
如果内存不够,可以这样
代码:
sudo umount /dev/shm
sudo mount -t tmpfs -o size=400m none /dev/shm
)

*64位用户请使用'qemu-system-x86_64'而不是'qemu',否则"-kernel-kqemu"不能启用.
*安装windows 2000请加入参数'-win2k-hack'.

3.2 使用XP
代码:
$ qemu-system-x86_64 . -hda windows.img -cdrom /dev/cdrom -boot c -m 384

注意,要使用宿主机的硬盘或者光驱或者声卡的话,可以使用添加参数
引用:
-hdb /dev/xxx

-cdrom /xxx
和-soundhw all

这些都可以在qemu-system-x86_64的man文档中查到,这里就不多说了。
进去之后,就能上网了。


6.使用
Ctrl + Alt 控制切换
Ctrl + Alt + F 全屏切换

7.保存配置
每次启动qemu之前都要手动载入kqemu模,可以将那些命令写入/etc/rc.local,
这样系统启动就会运行这些命令

8.网络
请参考http://fabrice.bellard.free.fr/qemu/qemu-doc.html

9.宿主和客系统之间的文件共享
QEMU为你配置了一个虚拟局域网和DHCP服务器.
首先在宿主Ubuntu上配置好Samba,然后这样启动qemu
(这里假设你有个qemu_share文件夹)
代码:
qemu -smb $HOME/qemu_share -m 384 -localtime windows.img

在客系统windows下,这样来访问共享文件
net use e: \\10.0.2.2\qemu_share
而且宿主Ubuntu的IP地址永远是10.0.2.2,因此如果你在宿主Ubuntu上运行了服务器,同样可以访问,比如
ftp:\\10.0.2.2,等等.

10.挂载虚拟硬盘,先要确保关闭qemu
代码:
sudo mount -o loop,offset=32256 windows.img /mnt


11.保存和恢复虚拟机的状态
当你安装好了一个虚拟机后,你可以在其上创建一个"叠加镜像",

qemu-img create -b windows.img -f qcow windows.ovl

现在你可以运行叠加镜像

qemu windows.ovl -enable-audio -user-net -localtime -smb qemu_share

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

12.运行QEMU命令
当QEMU正在运行时,他还可以接受命令
在QEMU窗口按CTRL+ALT+2,会出想QEMU监视器,输入help可以看到你能做很多事情
退出请按CTRL+ALT+1

13.将raw格式的虚拟硬盘转换为qcow格式

qemu-img convert windows.img -O qcow windows.qcow


14.故障解决
如果你遇到鼠标始终挂在右下角,请在启动QEMU前运行

export SDL_VIDEO_X11_DGAMOUSE=0

推荐阅读
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Firefox火狐浏览器关闭到http://detectportal.firefox.com的流量问题解决办法
    本文介绍了使用Firefox火狐浏览器时出现关闭到http://detectportal.firefox.com的流量问题,并提供了解决办法。问题的本质是因为火狐默认开启了Captive portal技术,当连接需要认证的WiFi时,火狐会跳出认证界面。通过修改about:config中的network.captive-portal-service.en的值为false,可以解决该问题。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
author-avatar
手机用户2502885835
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有