使用 RPM Fusion 在 Fedora 21 中安装 VirtualBox 给我带来了问题

使用 RPM Fusion 在 Fedora 21 中安装 VirtualBox 给我带来了问题

我最近安装了 Fedora 21 Workstation,并且想从 RPM Fusion 安装 VirtualBox 软件包。但这给我带来了问题。

$ uname -a
Linux a10-5800k 3.18.5-201.fc21.x86_64 #1 SMP Mon Feb 2 21:00:58 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

$ sudo yum install VirtualBox kmod-VirtualBox
Loaded plugins: langpacks
Resolving Dependencies
--> Running transaction check
---> Package VirtualBox.x86_64 0:4.3.20-3.fc21 will be installed
--> Processing Dependency: libSDL-1.2.so.0()(64bit) for package: VirtualBox-4.3.20-3.fc21.x86_64
---> Package kmod-VirtualBox.x86_64 0:4.3.20-4.fc21.3 will be installed
--> Processing Dependency: kmod-VirtualBox-3.18.6-200.fc21.x86_64 >= 4.3.20-4.fc21.3 for package: kmod-VirtualBox-4.3.20-4.fc21.3.x86_64
--> Running transaction check
---> Package SDL.x86_64 0:1.2.15-17.fc21 will be installed
---> Package kmod-VirtualBox-3.18.6-200.fc21.x86_64.x86_64 0:4.3.20-4.fc21.3 will be installed
--> Processing Dependency: kernel-uname-r = 3.18.6-200.fc21.x86_64 for package: kmod-VirtualBox-3.18.6-200.fc21.x86_64-4.3.20-4.fc21.3.x86_64
--> Finished Dependency Resolution
Error: Package: kmod-VirtualBox-3.18.6-200.fc21.x86_64-4.3.20-4.fc21.3.x86_64 (rpmfusion-free-updates)
           Requires: kernel-uname-r = 3.18.6-200.fc21.x86_64
           Installed: kernel-core-3.17.4-301.fc21.x86_64 (@koji-override-0/$releasever)
               kernel-uname-r = 3.17.4-301.fc21.x86_64
           Installed: kernel-core-3.18.5-201.fc21.x86_64 (@updates)
               kernel-uname-r = 3.18.5-201.fc21.x86_64
           Available: kernel-debug-core-3.17.4-301.fc21.x86_64 (fedora)
               kernel-uname-r = 3.17.4-301.fc21.x86_64+debug
           Available: kernel-debug-core-3.18.5-201.fc21.x86_64 (updates)
               kernel-uname-r = 3.18.5-201.fc21.x86_64+debug
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

问题是 RPM Fusionkmod-VirtualBox.x86_64指向kmod-VirtualBox-3.18.6-200.fc21.x86_64.我当前的内核有一个可用的kmod-VirtualBox,我尝试像这样安装它。

$ sudo yum install VirtualBox kmod-VirtualBox-3.18.5-201.fc21.x86_64.x86_64

但我仍然遇到与上面相同的依赖项检查错误。我想我的问题是如何安装 VirtualBox,以便它使用kmod与 Fedora 21 所使用的相同内核?

截至本文发布时,我已尝试更新,但 Fedora 21 仍然没有3.18.6-200.fc21可用的内核。

答案1

我想我的问题是如何安装 VirtualBox,以便它使用与 Fedora 21 所使用的内核相同的 kmod?

您的问题有一个替代解决方案,那就是使用akmod-VirtualBox

如何以及为什么使用 rpmfusion 的“automagical”源 akmods 而不是常规的二进制 kmods(内核模块)。

akmods (similar to dkms) is a solution to the problem of some kernel modules
depending on specific versions of a kernel. If you want to use a custom kernel,
or a test kernel -- e.g. from updates-testing or koji -- or if there is a very
new kernel in the updates repo, then you must either wait for rpmfusion to
rebuild binary kmods to match, or you must yumdownload and rpmbuild the source
rpm manually. Enter a better way: automatic kmod rebuilding.

以下是使用 yum 安装 akmod-VirtualBox 的方法:

安装 rpmfusion 存储库:

Fedora 14 到最新版本:

su -c 'yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm'

安装akmod:

yum install akmod-VirtualBox kernel-devel-$(uname -r); akmods

如果您安装了 VirtualBox 软件包并且没有重新启动系统,您可能需要加载内核驱动程序,以 root 身份执行此操作:“ systemctl restart systemd-modules-load.service

来源

答案2

有两个选项,但您可能会遇到有关其他软件包的其他问题。第一个是使用存在所需内核的更新测试存储库。

yum-config-manager --enable  updates-testing 

您可以安装所需的软件包。第二个选项是安装并使用较旧的内核启动,我认为在您的情况下是:kernel-core-3.17.4-301.fc21.x86_64,而不是安装较旧的软件包,例如 kmod-VirtualBox-4.3.20-2.fc21 但我不推荐它。

答案3

截至本文发布时,Fedora 刚刚获得了3.18.6-200.fc21内核并且我已经对其进行了更新。我现在可以VirtualBox从 RPM Fusion 安装该软件包。

相关内容