DanceFire的专栏

天地不仁,以万物为刍狗

用户操作
[即时聊天] [发私信] [加为好友]
舞焰ID:DanceFire
266943次访问,排名230好友0人,关注者1
DanceFire的文章
原创 51 篇
翻译 4 篇
转载 0 篇
评论 928 篇
DanceFire的公告
最近评论
hqfmyway:出现过同样的问题,谢谢解惑!
phhwr85:非常感谢,正郁闷中!
herry0628:A gold website for wow gold and
buy wow gold sevise.
herry0628:A gold website for wow gold and
buy wow gold sevise.
herry0628:A gold website for wow gold and
buy wow gold sevise.
文章分类
收藏
    相册
    Unix家族族谱图
    编程语言家族族谱
    操作系统相关图片
    插图
    麒麟操作系统相关图片
    L4 微内核实现
    Fiasco - DROPS的底层微内核 (TU Dresden)
    L4Ka::Pistachio (UKa, UNSW)
    seL4 - Secure Embedded L4 (UNSW)
    L4 微内核研究组
    L4 总部
    UKa的L4研究组
    UNSW/NICTA的L4研究组
    L4 文档
    L4 X.2 API的用户手册(UNSW)
    L4-embedded 参考手册 N1 (UNSW)
    基于 L4 的操作系统
    Darwin在L4上的移植 - Darbat (UNSW)
    DROPS - 基于L4的嵌入式实时操作系统 (TU Dresden)
    GNU Hurd在L4上的移植
    Linux在L4上的移植 - L4Linux (TU Dresden)
    Linux在L4上的移植 - Wombat (UNSW)
    Mungi - Single Address Space OS based on L4 (UNSW)
    朋友
    Dancefire's website
    ralph623的专栏(RSS)
    sinboy的菜地(RSS)
    Sunwear(RSS)
    Xinsoft :应用之美,在于药到病除(RSS)
    吕震宇(RSS)
    强强专栏(RSS)
    旁观生活的BT(RSS)
    潇寒的Blog(RSS)
    龙真先生(RSS)
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 Fedora Core Linux安装VMWare时调整用的脚本收藏

    新一篇: 我们到底是万物之灵? 还是另一种昆虫? | 旧一篇: 将Fedora Core的gcj替换为sun的java的脚本

    在Fedora Core上安装VMWare for Linux的时候,有时候会出一些问题,比如在执行 vmware-config.pl 的时候报错:

    What is the location of the directory of C header files that match your running
    kernel? [/usr/src/linux/include] /lib/modules/2.6.15-1.1907_FC5/build/include

    The kernel defined by this directory of header files does not have the same
    address space size as your running kernel.

    即使给了正确的路径,依旧不对。因此,安装的时候不得不每次先去修改vmware的一些文件。为了方便起见,我写了个傻瓜脚本,能够帮助做一些包括打补丁之类的琐碎事情,当然,执行前最好知道自己在做什么:)

    这个脚本仅仅是为了方便起见,没有考虑各种情况的检测,所以,事先要做好备份,另外需要注意执行多于一遍的时候,原始文件的备份可能被覆盖掉。虽然说一般不会出什么问题。:)

    这个脚本需要root权限执行。

    测试过的环境:

    VMWare
        VMware Player 1.0.1 build-19317
        VMware Workstation 5.5.1
    Linux
        Fedora Core 5
        Slackware 10.2
    Kernel
        kernel 2.6.16-rc4
        kernel 2.6.16-1.2122_FC5
        kernel 2.6.16-1.2122_FC5smp
        kernel 2.6.16-1.2122_FC5xen0




    #!/bin/bash

    CURDIR=`pwd`
    VM_CONFIG_PATCH='vmware-config.pl.patch'
    VM_CONFIG=`which vmware-config.pl`

    # generate the patch
    cat > $VM_CONFIG_PATCH << EOF
    1972,1973c1972,1973
    < \$header_page_offset =~ s/^\$pattern \(?0x([0-9a-fA-F]{8,}).*\$/\$1/;
    < if (\$header_page_offset =~ /[0-9a-fA-F]{8,}/) {
    ---
    > if (\$header_page_offset =~ /^\$pattern \(?0x([0-9a-fA-F]{8,})/) {
    > \$header_page_offset = \$1;
    EOF

    # apply the patch to vmware-config.pl
    patch $VM_CONFIG $VM_CONFIG_PATCH



    # Modify the compressed archives

    search_base(){
    # 2 level search, for increase search speed
    FIRST_LEVEL=$1
    FINAL_SEARCH=$2

    list=`find / -name $FIRST_LEVEL -maxdepth 4 2>/dev/null`
    basedir=''

    for item in $list; do
    file=`find $item -name $FINAL_SEARCH`
    if [ ! -z $file ]; then
    break;
    fi
    done

    if [ -z $file ]; then
    echo "Cannot find $FINAL_SEARCH"
    return 1
    else
    basedir=${file%/$FINAL_SEARCH}
    fi

    echo $basedir
    }

    SOURCE_DIR=`search_base vmware vmmon.tar`
    VM_SOURCE_PATCH='vm.patch'

    mkdir vmtemp
    cd vmtemp
    tar xf $SOURCE_DIR/vmmon.tar
    tar xf $SOURCE_DIR/vmnet.tar

    # generate patch
    cat > $VM_SOURCE_PATCH <<EOF
    10c10
    < \$(EXTRA_CFLAGS) -Iinclude2/asm/mach-default \\
    ---
    > \$(EXTRA_CFLAGS) -Iinclude2/asm/mach-default -DKBUILD_BASENAME="\$(DRIVER)" \\
    EOF

    # apply the patch
    patch vmmon-only/Makefile.kernel $VM_SOURCE_PATCH
    patch vmnet-only/Makefile.kernel $VM_SOURCE_PATCH

    # backup the original tar
    if [ ! -f $SOURCE_DIR/vmmon.tar.bak ]; then
    mv $SOURCE_DIR/vmmon.tar $SOURCE_DIR/vmmon.tar.bak
    fi
    if [ ! -f $SOURCE_DIR/vmnet.tar.bak ]; then
    mv $SOURCE_DIR/vmnet.tar $SOURCE_DIR/vmnet.tar.bak
    fi

    # create new tars
    tar cf $SOURCE_DIR/vmmon.tar vmmon-only/
    tar cf $SOURCE_DIR/vmnet.tar vmnet-only/

    cp $VM_SOURCE_PATCH $SOURCE_DIR

    cd ..
    rm -rf vmtemp



    Reference

    这个脚本主要是参照cacao74的发言进行的修改
    cacao74 at http://www.vmware.com/community/thread.jspa?threadID=31877&tstart=0

    另一个可供使用的脚本
    http://platan.vc.cvut.cz/ftp/pub/vmware/vmware-any-any-update101.tar.gz

    发表于 @ 2006年06月04日 01:38:00|评论(loading...)|编辑

    新一篇: 我们到底是万物之灵? 还是另一种昆虫? | 旧一篇: 将Fedora Core的gcj替换为sun的java的脚本

    评论

    #alaiyeshi 发表于2006-06-05 19:06:00  IP: 219.239.194.*
    我的印象中vmware一直是在应用层上作的,所以基本没用过
    win上用的是virtualPC
    linux上用的xen

    研究xen吧,很有意思的,虽然现在对虚拟win还是有点问题
    #Dancefire 发表于2006-06-06 20:37:00  IP: 60.227.229.*
    MS的Virtual PC用起来还是有些地方不顺手,有些系统执行过程中会出现一些奇怪的错误,而且性能稍差。得等微软的三板斧过后估计才会比较好用,现在最多算是第二板斧;)。现在Windows平台的虚拟机,我感觉VMWare还是想当出色的。

    我一般用Xen虚拟Linux主机,用来虚拟其他系统的比较少。因为Xen的半虚拟技术需要内核的配合,目前良好支持的不是很多。就像FreeBSD这样成熟的系统,虽然DomU应该没问题了,可是Dom0的支持还是暂时不能解决。因为这种有限度的支持,我一般只用Xen虚拟Linux。我有的时候也用Qemu,也蛮有意思的。
    #alaiyeshi 发表于2006-06-09 16:47:00  IP: 219.239.194.*
    呵呵
    现在在xen上虚拟win也可以了
    不过是真的很麻烦,对机器的要求也高

    但是速度是还不错的
    期待xen的更加完善和方便
    #jonnysun 发表于2006-07-02 16:08:00  IP: 59.77.4.*
    在进行该脚本时,是不是一定要重新编译内核源代码呢?
    #fish 发表于2006-08-05 22:10:00  IP: 211.100.13.*
    我有原代码盘 共4张 但是我不知道哪一个文件是内核,
    也就是如何才能在 该目录下生成头文件/lib/modules/2.6.15-1.1907_FC5/build/include

    清说一下
    谢谢
    #herry0628 发表于2008-07-14 12:02:29  IP: 220.178.42.*
    A gold website for wow gold and
    buy wow gold sevise.
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © DanceFire