Ubuntu VirtualBox故障:如何回滚至可用安装版本?
嗨,我来帮你搞定这个VirtualBox回滚的问题!针对Ubuntu 14.04的情况,完全可以把VirtualBox回滚到之前能正常工作的版本,下面是一步步的操作方法:
1. 确认当前安装的VirtualBox版本
先查清楚你现在装的是哪个版本,打开终端输入:
dpkg -l | grep virtualbox
输出里会显示已安装的VirtualBox相关包和对应的版本号,记下来方便后续操作。
2. 彻底卸载当前有问题的VirtualBox
为了避免残留配置影响回滚,用purge命令完全卸载:
sudo apt-get purge virtualbox*
输入你的用户密码确认后,等待卸载完成。
3. 找到之前可用的VirtualBox版本
如果你记不清之前的版本,可以查看apt的安装历史记录,找之前成功运行的版本:
cat /var/log/apt/history.log | grep virtualbox
在输出里找带有“install”字样的行,里面会有之前安装的版本号。
4. 安装指定版本的VirtualBox
比如假设你找到的可用版本是5.0.40-dfsg-0ubuntu1.14.04.2,直接用apt安装这个特定版本:
sudo apt-get install virtualbox=5.0.40-dfsg-0ubuntu1.14.04.2
注意把版本号替换成你自己找到的那个。如果apt提示找不到这个版本,可以先启用Ubuntu的官方universe源:sudo add-apt-repository universe,再执行sudo apt-get update后重试安装。
5. 重新编译VirtualBox内核模块
安装完成后,需要让VirtualBox适配当前系统内核,执行:
sudo /sbin/vboxconfig
这个命令会编译对应的内核模块,完成后VirtualBox应该就能正常启动了。
6. 锁定版本防止自动升级(可选但推荐)
为了避免以后系统自动更新VirtualBox再次出现同样问题,可以锁定这个版本:
sudo apt-mark hold virtualbox
之后apt就不会自动更新VirtualBox了,如果你之后想解锁,用sudo apt-mark unhold virtualbox即可。
关于gcc-5的额外说明
如果你之后还是需要安装gcc-5,不用再用那个test仓库了,添加ubuntu-toolchain-r的稳定源就行:
sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa sudo apt-get update && sudo apt-get install gcc-5
这个源的稳定版本在Ubuntu 14.04上兼容性很好,不会有之前的问题。
内容的提问来源于stack exchange,提问作者corax

