红联Linux门户
Linux帮助
当前位置: 红联Linux门户 > Ubuntu

更新内核后VirtualBox的问题

发布时间:2009-04-07 16:32:54来源:红联作者:牧马
我更新了8.04的内核到2.6.29,Virtualbox下虚拟的XP不能启动了,估计是内核变动的问题。

试过如下方法:
以前就这个问题 ~~搜索下 就知道了 ~不用重装Vbox的
1. sudo apt-get install virtualbox-ose-source
2. sudo m-a update
3. sudo m-a prepare
4. sudo m-a a-i virtualbox-ose
5. sudo /etc/init.d/vboxdrv restart
--------------------------------
随着 Ubuntu 系统内核的更新,VirtualBox 原有的内核模块已经不再适用。于是,VirtualBox 将无法正常使用。需要重新安装 VirtualBox 吗?当然不必。我们只需重新稍加配置即可。

首先获取与当前内核版本相一致的头文件:

sudo apt-get install linux-headers-`uname -r`

接着,我们来重新编译 VirtualBox 内核模块,这可以使用下面的指令完成:

sudo /etc/init.d/vboxdrv setup
需要等待几分钟!!!
---------------------------------
http://www.virtualbox.org/ticket/3403 有解决方法。
打开虚拟机显示以下错误:
Failed to load VMMR0.r0 (VERR_SYMBOL_NOT_FOUND).
Unknown error creating VM (VERR_SYMBOL_NOT_FOUND).

日志文件
最后一句错误是VMMR0.r0 is importing g_SUPGlobalInfoPage which we couldn't find

修改/usr/share/virtualbox/src/vboxdrv/下的Makefile,
将# VBOX_USE_INSERT_PAGE = 1的 #去掉。
然后执行 /etc/init.d/vboxdrv setup 重新编译即可
-------------------------------

都不能成功修复,其中最后一个方法,
我的机器里没有找到/usr/share/virtualbox/src/vboxdrv/这个目录,只有/usr/share/virtualbox/sdk/samples/API下有个MAKEFILE

我把VBOX_USE_INSERT_PAGE = 1加进去了

但是执行 /etc/init.d/vboxdrv setup,反馈信息:
* Usage: /etc/init.d/vboxdrv {start|stop|restart|status}

执行VIRTUALBOX的时候,显示如下信息:
VirtualBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. Please install the virtualbox-ose-modules package for your kernel, e.g. virtualbox-ose-modules-generic..
VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED).


返回 代码:
0x80004005
组件:
Console
界面:
IConsole {1dea5c4b-0753-4193-b909-22330f64ec45}


有人帮助一下吗?
文章评论

共有 5 条评论

  1. henryhj 于 2009-04-09 10:53:24发表:

    引用:
    我到官网上下了个新的版本的DEB包,然后拆卸旧的,装上新的,OK了!

    虚拟的XP还在。
    牧马 发表于 2009-4-8 13:33

    以前我也搞过,最后还是感觉直接去官网下个包简单又好:0wpoi2

  2. 牧马 于 2009-04-08 13:33:24发表:

    我到官网上下了个新的版本的DEB包,然后拆卸旧的,装上新的,OK了!

    虚拟的XP还在。

  3. fu_qingyi 于 2009-04-08 10:58:59发表:

    学习了。。。

  4. 牧马 于 2009-04-07 17:09:36发表:

    感谢你的帮助!

    我的显然是问题一了

    执行到:
    sudo ./build_in_tmp install
    让他编译安装模块驱动

    出现错误:

    在包含自 /tmp/vbox.0/linux/SUPDrv-linux.c:22 的文件中:
    /tmp/vbox.0/SUPDRV.h:89:30: 错误: asm/semaphore.h:没有该文件或目录
    /tmp/vbox.0/linux/SUPDrv-linux.c: 在函数‘VBoxSupDrvCreate’中:
    /tmp/vbox.0/linux/SUPDrv-linux.c:768: 错误: ‘struct task_struct’没有名为‘euid’的成员
    /tmp/vbox.0/linux/SUPDrv-linux.c:769: 错误: ‘struct task_struct’没有名为‘egid’的成员
    /tmp/vbox.0/linux/SUPDrv-linux.c: 在函数‘supdrvOSGipResume’中:
    /tmp/vbox.0/linux/SUPDrv-linux.c:1914: 错误: 提供给函数‘smp_call_function’的实参太多
    make[2]: *** [/tmp/vbox.0/linux/SUPDrv-linux.o] 错误 1
    make[1]: *** [_module_/tmp/vbox.0] 错误 2
    make[1]:正在离开目录 `/usr/src/linux-headers-2.6.29-020629-generic'
    make: *** [vboxdrv] 错误 2

  5. xlniva 于 2009-04-07 16:44:06发表:

    Ubuntu8.04中VirtualBox的问题以及解决方法

    问题一:启动提示VirtualBox kernel driver not installed.
    问题描述:
    VirtualBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. Please install the virtualbox-ose-modules package for your kernel and execute '/etc/init.d/vboxdrv start' as root.
    VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED)。
    Result Code:
    0x80004005
    Component:
    Console
    Interface:
    IConsole {1dea5c4b-0753-4193-b909-22330f64ec45} [bitsCN_com]
    解决办法:
    sudo apt-get install virtualbox-ose-source
    安装模块源码然后
    cd /usr/src
    解压源码
    sudo tar xjvf virtualbox-ose.tar.bz2
    cd modules/virtualbox-ose
    sudo ./build_in_tmp install
    让他编译安装模块驱动
    完成后
    /usr/src/modules/virtualbox-ose$ sudo /etc/init.d/vboxdrv start
    * Starting VirtualBox kernel module vboxdrv [ OK ]
    就可以看到加载成功了,启动virtualbox也没有问题了。


    问题二:启动提示The VirtualBox kernel driver is not accessible to the current user.
    问题描述:
    The VirtualBox kernel driver is not accessible to the current user. Make sure that the user has write permissions for /dev/vboxdrv by adding them to the vboxusers groups. You will need to logout for the change to take effect..
    VBox status code: -1909 (VERR_VM_DRIVER_NOT_ACCESSIBLE).
    Result Code:0x80004005
    解决办法:
    sudo chmod ugo rw /dev/vboxdrv
    或者
    解决的方法:
    sudo chmod 777 /dev/vboxdrv


    问题三键盘在进入虚拟机后失效
    解决方法:
    sudo apt-get install scim-bridge-client-qt

    Ubuntu8.04下如何使用virtualbox安装winxp

    目录


    * 1 安装virtualboxvirtualbox_1.5.6
    * 2 关于版本问题
    * 3 关于一些常见问题(默认为开源版本的Virtualbox)
    * 4 安装xp的步骤(默认为开源版本的Virtualbox)

    安装virtualboxvirtualbox_1.5.6

    关于安装virtualbox的开源版本:打开新立得,搜索安装下面几个软件包:virtualbox-ose-modules-generic

    virtualbox-ose ,安装第一个包的时候会提示安装另一个包,这个包与你的内核版本有关,比如我现在安装的就是

    virtualbox-ose-modules-2.6.24-17-generic,和我的系统的内核版本是一致的。 点击应用,让新立得自己下载安装

    去吧…………


    终端下安装:

    sudo apt-get install virtualbox

    有网友发现默认安装的内核与自己系统的内核不一致。本人不是专家,不乱猜测原因^^。大家可以参考

    http://forum.ubuntu.org.cn/viewtopic.php?t=136436&highlight=

    中的方法来解决虚拟机的启动问题。我把那个帖子的精要转到这里

    那位网友找到的方法是这样的:

    在做完上面在新立得中下载安装的步骤后,接着

    sudo apt-get install virtualbox-ose-source

    sudo m-a update

    sudo m-a prepare

    sudo m-a a-i virtualbox-ose

    sudo /etc/init.d/vboxdrv resta

    关于版本问题

    如果你是安装了ose的版本,可能会发现安装后无法使用USB设备。如果你的工作依赖于USB设备,那么可以去官方

    网站 http://www.virtualbox.org 下载非ose版本的,也可以考虑加入这个源

    deb http://archive.ubuntu.org.cn/ubuntu-cn/ hardy main restricted universe multiverse

    然后在新立得里面安装。


    关于一些常见问题(默认为开源版本的Virtualbox)

    1 提示VirtualBox kernel driver not installed 。##你肯定没有按照上面的指导安装virtualbox-ose-modules-generic,

    安装它时会关联另一个至关重要的文件,至关重要!

    2 启动后提示“The VirtualBox kernel driver is not accessible to the current user. Make sure that the user has

    write permissions for /dev/vboxdrv by adding them to the vboxusers groups. You will need to logout for the change

    to take effect..“ ## 解决办法:这是由于你的用户名没有加到组中。打开 系统--系统管理--用户和组 ,

    点击“解锁“并输入密码。点击“管理组”,把导航条拉到最后可以看见一个叫做vbousers的组,选中它后点击右边的

    “属性”,然后把你的用户名和root都打上对勾,点击确定就可以了。记得得重启。如果失败,就得手动修改了,先备

    份sudo cp /etc/group /etc/group.bak,然后 sudo gedit /etc/group,把你的用户名添加到vboxusers的组里面并保存文

    档。如果还是失败(说明RP有问题阿,呵呵),可以尝试sudo chmod 777 /dev/vboxdrv,不过每次重启都会失效…

    3 无法使用键盘。##打开vbox,点击 文件 --首选项 --输入 把“自动捕获键盘”前面的对勾去掉试试。如果无

    效,也可以安装scim-bridge-client-qt。我用的输入法是scim-bridge, locale 是en_US.UTF-8。sudo apt-get install

    scim-bridge-client-qt然后im-switch -s scim-bridge就可以了。还有一种办法,就是去掉语言支持里面的启用复杂字符

    输入支持前面的对勾(不推荐)……做过上面的步骤后最好重启一下,不重启我也没有办法……
    安装xp的步骤(默认为开源版本的Virtualbox)

    1打开vbox,点击 新建 ,按照提示建立新的虚拟电脑。建议虚拟硬盘开到4GB以上,如果你的机器内存够大可以多开一点内存。我的 机器是神舟HP500的,内存为1G,我把虚拟机内存设置为256MB,感觉不是很卡,仅供参考阿

    2 回到主界面,点击 设置--光驱,勾上“加载光驱”。如果你想用iso文件安装xp就把iso光盘映像勾上,如果是光盘安装就勾选上面的。

    3启动吧 是不是安装后不能最大化?试试把分辨率改成1024*768。