代码之家  ›  专栏  ›  技术社区  ›  Ian Powell

无法在Arch中安装virtualbox

  •  5
  • Ian Powell  · 技术社区  · 8 年前

    我曾尝试使用pacman在Arch(4.7.0-1)上安装Virtualbox,在我尝试运行它之前,一切似乎都很顺利。我收到以下消息

    可用于当前内核(4.7.0-1-ARCH),或未能 负载请重新编译内核模块并安装

           sudo /sbin/vboxconfig
    
         You will not be able to start VMs until this problem is fixed.
    

    VirtualBox:supR3HardenedMainGetTrustedMain:dlopen(“/usr/lib/VirtualBox/VirtualBox.so”,)失败:/usr/lib/libQt5Core.so。5: 文件太短

    我应该从哪里开始调试呢?

    3 回复  |  直到 5 年前
        1
  •  5
  •   tommybananas    8 年前

    自5.0.16版起,虚拟机主机模块arch和虚拟机主机dkms使用systemd模块加载。服务在引导时加载所有四个VirtualBox模块。

    要手动加载模块,请运行: modprobe vboxdrv

    https://wiki.archlinux.org/index.php/VirtualBox#Load_the_VirtualBox_kernel_modules

        2
  •  1
  •   Adriana Hernández    5 年前

    这个答案只在 Ubuntu公司 借方9 在我的情况下,但也许可以为你工作。

    vboxdrv 模块未签名,因此未与内核一起加载。如果您的计算机已激活SecureBoot模式,这将发生,这在现代设备中很常见。

    未安装内核驱动程序(rc=-1908)

    执行以下步骤对驱动程序进行签名,驱动程序将作为内核模块加载:

    1. 安装 mkutil

    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get install mokutil
    

    2. 生成签名文件:

    openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VirtualBox/"
    

    3. 然后将其添加到内核:

    sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
    

    4. 将其注册为安全引导。

    重要提示!

    sudo mokutil --import MOK.der
    

    5. 最后,重新启动计算机。出现一个蓝色屏幕,键盘等待,按下要求您中断引导的键。

    enter image description here

    当您进入蓝色屏幕时,选择

    Enroll MOK > Continue > Yes > and it will ask you for the password
    

    如果您以前输入过,您将输入它,并且您将被告知操作已成功完成。

    现在,您的操作系统将启动,您现在可以毫无问题地使用VirtualBox:)

    希望这对某人有所帮助。

        3
  •  -1
  •   Sayed Imran    4 年前

    打开终端-验证版本/代号

    代码:

    lsb_release -a

    使用任何纯文本编辑器,如gedit/scite/bash

    代码:

    sudo gedit /etc/apt/sources.list

    将以下行添加到/etc/apt/sources.list:

    代码:

    deb http://download.virtualbox.org/virtualbox/debian xenial contrib

    保存并关闭

    添加密钥,并与下载和注册相结合;

    代码:

    wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -

    wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -

    确保DKMS已安装。可能需要重新安装到当前内核。

    代码:

    dkms status

    此时您可能会遇到一个错误,抱怨linux头文件,只需通过以下方式下载头文件包 apt-get install linux-headers-5.4.0-28-generic

    确保计算机和操作系统是最新的

    代码:

    sudo apt-get autoclean sudo apt-get clean sudo apt-get autoremove sudo apt-get update sudo apt-get upgrade

    为当前运行的内核重建所有DKMS模块:

    代码:

    dkms autoinstall

    安装最新版本的VirtualBox

    代码:

    sudo apt-get install virtualbox

    推荐文章