• QEMU+Accelerator


    QEMU刚刚发布的Accelerator带来了QEMU革命,它不再是一个性能低等的模拟器
    使用Accelerator的QEMU速度一下提升了5倍之多。OSNews报道:
    This means you could theoretically run Windows (or another OS) on
    a Linux machine at near native speeds without buying a commercial emulator.
    今天赶紧升了级,果然不同反响,安装了RHEL4,Win2k,速度很好,也没有以前版本分出大于2G空间
    造成硬盘检查出错的问题了,在模拟的linux中进行危险试验爽多啦。 :)
    QEMU安装也比win4lin/vmware简单,最主要QEMU是开源的,后两者都还需要序列号  :(
    虽然Accelerator是专利产品,不过也是免费使用的,只是在分发上有一些限制.
    总之是不错的东东喽,快试试吧!
    不会装?不会用?看看我的安装,使用心得吧  ^_^
    注意:该方法仅适用于2.6.x内核,2.4内核请查看QEMU安装文档。
    QEMU有两种模拟方式:

    1.完整的系统模拟:这种模式下,QEMU模拟一个完整的系统(比如说,整个PC),包括CPU和周边的计算机设备。你可以不必重启就可以同时运行不同的系统来调试系统代码。

    2.User mode模拟(只能在Linux宿主机下使用):这种模式下,QEMU能够在Linux下运行从一个CPU到另一个CPU的编译过程。这通常可以被用来运行Wine模拟器或者是交错式的编译和调试。

    这里只说模拟整个PC :)

    首先先下载,编译,安装:
    目前只有CVS版本的QEMU才可以使用Accelerator(加速器),所以需要编译。而其他版本的QEMU,可以直接下载binary的,在/下解 压缩即可使用,十分方便。不象win4lin,vmware这些模拟器还需要给内核打补丁。而且还不是开源的,安装比较麻烦。(至少我没成功安装过它们两 个)
    不过目前binary还不能使用加速器,所以速度会慢很多。相信很快binary版本就会加入这个加速器啦。
    毕竟加速器刚出来没几天,值得期待。。。。 ^_^
    OK,言归正传,开始来编译,安装CVS版本的QEMU,并且加入Accelerator支持:
    首先从 http://www.dad-answers.com/qemu/ 下载当前CVS版本的qemu
    我的版本是:qemu-snapshot-2005-02-22_23.tar.bz2
    再从 http://fabrice.bellard.free.fr/qemu/kqemu-0.6.2-1.tar.gz 下载回来加速器
    注意:编译kqemu需要内核源码包,将与当前内核版本完全相符的源码包解压在/usr/src下
    并且确保/lib/modules/`uname -r`/build是正确指向内核源码目录的,如下所示:
    [root@LFS ~]#ls -l /lib/modules/2.6.10-lvm/build
    lrwxrwxrwx  1 root root 21 Feb 22 12:50 /lib/modules/2.6.10-lvm/build -> /usr/src/linux-2.6.10/
    如果没有正确指向内核源码目录,使用ln -s 命令建立链接:
    [root@LFS ~]#ln -s /usr/src/linux-2.6.10 /lib/modules/2.6.10-lvm/build
    生成kqemu需要的内核源文件:
    [root@LFS ~]#cd /usr/src/linux-2.6.10
    /root  ------------> /usr/src/linux-2.6.10
    [root@LFS linux-2.6.10]#make mrproper
    确保内核源码纯净,保证kqemu编译出来可用。
    [root@LFS linux-2.6.10]#cp /boot/config-2.6.10 .config
    将当前内核配置文件复制过来
    [root@LFS linux-2.6.10]#make scripts/
    生成kqemu需要的东东,没有这步,编译就会出错。

    做好后就可以开始编译QEMU了,使用如下命令编译,安装:
    [root@LFS ~]#tar jxvf qemu-snapshot-2005-02-22_23.tar.bz2
    [root@LFS ~]#tar zxvf kqemu-0.6.2-1.tar.gz -C qemu-snapshot-2005-02-22_23/
    使用-C qemu-snapshot-2005-02-22_23/ 将kqemu解压到qemu的目录中,让qemu支持kqemu
    [root@LFS ~]#cd qemu-snapshot-2005-02-22_23
    /root  ------------> /root/qemu-snapshot-2005-02-22_23
    [root@LFS qemu-snapshot-2005-02-22_23]#./configure
    ...........略
    KQEMU module configuration: --------->表示加入kqemu支持
    kernel sources    /lib/modules/2.6.10-lvm/build
    kbuild type       2.6
    [root@LFS qemu-snapshot-2005-02-22_23]#make
    [root@LFS qemu-snapshot-2005-02-22_23]#make install
    这样,qemu就安装到了/usr/local下,所有可执行文件在/usr/local/bin下,如果想安装到/usr:
    [root@LFS qemu-snapshot-2005-02-22_23]#./configure -->./configure --prefix=/usr

    安装好后,kqemu模块安装在: /lib/modules/2.6.10-lvm/misc/kqemu.ko
    并且安装脚本会自动在/dev/下创建一个kqemu设备:
    [root@LFS linux-2.6.10]#ls -l /dev/kqemu
    crw-rw-rw-  1 root root 250, 0 Feb 24  2005 /dev/kqemu
    [root@LFS linux-2.6.10]#
    加载kqemu模块:
    [root@LFS linux-2.6.10]#modprobe kqemu
    [root@LFS linux-2.6.10]#
    使用lsmod命令检查:
    [root@LFS linux-2.6.10]#lsmod |grep kqemu
    kqemu                  41864  0
    [root@LFS linux-2.6.10]#

    如果你发现重启后/dev/kqemu消失了,需要重新创建它:
    [root@LFS linux-2.6.10]#mknod /dev/kqemu c 250 0
    [root@LFS linux-2.6.10]#chmod 666 /dev/kqemu
    你可以将上面两行命令加入到系统的启动脚本中,例如/etc/rc.d/rc.local
    还有上面那个modprobe kqemu也一并加进去吧(如果你想每次系统启动自动加载kqemu模块)
    注意的是,加到/etc/rc.d/rc.local时,命令最好写绝对路径,例如/sbin/modprobe

    OK,现在QEMU,Accelerator都已经安装完成,可以开始安装OS啦。
    这里我以安装RHEL4为例说一下qemu的基本用法,非常简单!
     
    首先创建磁盘镜像文件:
    [root@LFS distro]#qemu-img create redhat.img 6G
    Formating 'redhat.img', fmt=raw, size=6291456 kB
    [root@LFS distro]#
    这样就创建好了一个名为redhat.img的6G磁盘镜像。
    注意:创建的磁盘镜像文件大小最好小于你实际分区剩余空间。

    开始安装RHEL4:
    [root@LFS ~]#qemu -boot d -cdrom /rhel4/EL_disc1.iso -hda redhat.img --enable-audio
    -boot d :从光驱引导  a(软盘引导) c(硬盘引导) d(光驱引导)
    -cdrom : ISO文件,也可以直接使用光驱设备(/dev/cdrom)...别忘了插入光盘 :)
    -hda : 就是虚拟机里的硬盘啦,也就是刚才qemu-img创建出的东东。
    -enable-audio : 声卡支持

    安装过程中,要求换盘:
    在qemu中按ctrl+alt+2切换到qemu monitor模式 输入?help可以查看可用命令及使用说明。
    (在其他版本的qemu中,运行qemu加载OS后,这个shell就会自动变成qemu monitor模式)
    change device filename -- change a removable media
    看来它就是用来换盘的了 : change cdrom /rhel4/EL_disc2.iso

    monitor下还有几个常用的命令:
    savevm filename 将整个虚拟机当前状态保存起来
    loadvm filename 恢复 (最初我没用change换盘时,就是先savevm->重新运行qemu->loadvm :( )
    sendkey keys 向VM中发送按键,例如你想在虚拟机里切换到另一个终端,按下了ctrl-alt-F2
    不幸的是,切换的却是你的主系统,所以就需要用 sendkey了 sendkey ctrl-alt-f2
    还有其他几个命令,自己看看啦。

    经过N久终于装好了,现在可以启动试试:
    [root@LFS distro]#qemu redhat.img -enable-audio -user-net -m 64
    -user-net 相当于VMware的nat,主系统可以上,虚拟机就可以
    -m 64     使用64M内存,缺省下使用128M

    ctrl-alt-f 全屏
    ctrl-alt   主机/虚拟机鼠标切换
    qemu还有一些其他参数,输入qemu可以查看其相关说明。

    Good Luck ! ^_^

    相关资源:
    http://fabrice.bellard.free.fr/qemu/
    qemu 主页 download,doc,faq....etc
    http://www.dad-answers.com/qemu/
    QEMU CVS Snapshot版本和一些有用的QEMU外围支持工具
    http://www.dad-answers.com/qemu-forum/
    qemu论坛
  • 相关阅读:
    微信小程序里自定义组件,canvas组件没有效果
    微信小程序填坑之路(三):布局适配方案(rpx、px、vw、vh)
    小程序checkbox调整大小
    css让文字竖着排列 writing-mode 属性
    微信小程序 位置定位position详解,相对定位relative,绝对定位absolute相关问题
    小程序国际化实现方式
    mybatis plus 学习
    cesium js学习一加载三维模型【转】
    cesiumjs学习笔记之三——cesium-navigation插件 【转】
    局域网Cesium离线影像及瓦片影像地图加载【转】
  • 原文地址:https://www.cnblogs.com/huqingyu/p/131104.html
Copyright © 2020-2023  润新知