Recently, hadoop debugging needs to be performed on several virtual machines, so the virtual machine is installed on Ubuntu, but the problem that the virtual machine cannot be started is encountered:
An error dialog box is displayed. The error message is as follows:
Kernel driver not installed (rc=-1908)The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Re-setup the kernel module by executing'/etc/init.d/vboxdrv setup'as root. Users of Ubuntu, Fedora or Mandriva should install the DKMS package first. This package keeps track of Linux kernel changes and recompiles the vboxdrv kernel module if necessary.
First summarize the system environment: ubuntu desktop 13.10, virtualbox-4.3, kernel: 3.11.0-17
1. As instructed by this error, I will switch to the command line,
Sudo/etc/init. d/vboxdrv setup
The following error message is displayed:
The prompt is still unable to load dkms normally, and it seems that the source code of the current kernel needs to be compiled, at the same time, the prompt to view/var/log/vbox-inuntustall.log log.
2. Therefore, the cat/var/log/vbox-install log
Uninstalling modules from DKMS removing old DKMS module vboxhost version 4.3.8------------------------------Deleting module version: 4.3.8completely from the DKMS tree.------------------------------Done.Attempting to install using DKMSCreating symlink /var/lib/dkms/vboxhost/4.3.8/source -> /usr/src/vboxhost-4.3.8DKMS: add completed.Failed to install using DKMS, attempting to install withoutMakefile:183: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. Stop.
These are a bit wrong. Where is the problem?
3. Check dkms for normal installation. Follow virtualbox repeatedly to ensure that the installation is not complete.
sudo apt-get install dkms
The prompt is that the latest version has been installed, indicating that it is not a problem with dkms.
4. Check the kernel version uname-r to obtain the current kernel version 3.11.0-17-generic.
5. After searching for the network, someone prompts that the kernel may need to be re-installed.
sudo apt-get install linux-headers-$(uname -r)
Note: $ {uname-r} is used to represent the current kernel version and cannot be used directly in the command. Here, my version is output in step 4.
6. Run sudo/etc/init. d/vboxdrv setup again as prompted.
xxxx@xxx-Ubuntu:~$ sudo /etc/init.d/vboxdrv setupStopping VirtualBox kernel modules ...done.Uninstalling old VirtualBox DKMS kernel modules ...done.Trying to register the VirtualBox kernel modules using DKMS ...done.Starting VirtualBox kernel modules ...done.
Tip: The virtualbox module has been registered to the kernel normally.
7. Click the start button of virtualbox to start the Virtual Machine in virtualbox normally.
8. Cause Analysis:
Finally, I tried to analyze the cause of this error: the previous virtualbox can work normally. Later, after upgrading ubuntu and the kernel version, it is estimated that the registration system before virtualbox and kernel is broken, that is, the original registration fails in the new kernel. At the same time, the current kernel may be being upgraded, with several unstable situations. Therefore, we need to re-overwrite and install the kernel, and then register the virtualbox kernel to the current Linux kernel again. The above is just speculation. You are welcome to come up with new ideas and speculation.