关于Debian中virtualbox的问题

Debian testing算是半滚动升级的发行版,平时使用virtualbox的时候经常因为sudo apt-get upgrade升级了内核之后无法启动,错误信息会提示在root下运行/etc/init.d/vboxdrv setup 其意思便是没有编译成功供virtualbox使用的内核模块 ,需要手动编译一下。
上次也遇到那个问题,上面那条命令执行后依然行不通 纠结了好久,于是在/var/log/vbox-install.log找到里面的错误信息为

Failed to install using DKMS
attempting to install without 16 Makefile:181:***
Error: unable to find the sources of your current Linux ke rnel.
Specify KERN_DIR=<directory> and run Make again。 停止

编译内核模块需要头文件和内核源码
可以用以下命令

sudo apt-get install kernel-package ebuild-essential linux-headers-`uname -r`

重新配置下virtualbox

dpkg-reconfigure VirtualBox

如果源里面没有你的内核版本 可以去http://mirrors.163.com/debian/pool/main/l/linux/这里找。

旧包可以在snapshot这个站点找
http://snapshot.debian.org/archive/debian/
因为是deb包,下载完成后直接安装然后配置virtualbox就可以
升级完新内核 就可以把老内核删除掉了,保留一个能够使用的内核就可以。
debian卸载旧内核:
debian卸载旧内核要先看看有哪些旧的内核,用命令:

dpkg --get-selections |grep linux

如果你的内核是以kernel开头的就把上面的linux改成kernel,之后再用

dpkg --purge --force-remove-essential linux-image-XXX

XXX是你要卸载的内核的版本号。
然后更新一下grub

sudo update-grub

至此完成

原文地址:https://www.cnblogs.com/timeship/p/2937654.html