Tested under:
- GNU/Linux distro: Debian lenny/sid
- Kernel: 2.6 (2.6.22-3-k7)
- Architecture: AMD K7 (Athlon XP 1900+)
Prerequisites: make sure you’ve selected both lenny and sid repositories. In your /etc/apt/sources.list you must read something like this:
## Debian Unstable (sid) deb http://ftp.it.debian.org/debian/ sid main contrib non-free deb-src http://ftp.it.debian.org/debian/ sid main contrib non-free ## Debian Testing (lenny) deb http://ftp.it.debian.org/debian/ lenny main contrib non-free deb-src http://ftp.it.debian.org/debian/ lenny main contrib non-free
You can also add the Virtual Box repository:
##VIRTUALBOX deb http://www.virtualbox.org/debian etch non-free
But achtung! It’s the Evil Proprietary Version.
In this howto, I install the VirtualBox OSE (Open Source Editon) available in Debian repositories.
# apt-get update(necessary if you changed /etc/apt/sources.list)# apt-get install virtualbox-ose virtualbox-ose-source virtualbox-ose-modules-2.6-k7Note: virtualbox Guest Additions should be installed only if you’re running a linux distro within a virtualbox (such a virtual machine is called “guest”)Change virtualbox-ose-modules-2.6-XXX with your architecture (486,686 ecc.). The 486 version is installed by default. This is a meta-package that download the latest version of virtualbox for 2.6 kernel on specified architecture.virtualbox-ose-guest-utils virtualbox-ose-guest-source- After installation, in order to run VirtualBox, you have to plug a kernel module named vboxdrv specific for your kernel. To do this:
# apt-get install module-assistant# m-a prepare# m-a a-i virtualbox-oseIf you’ve installed the binary version from virtualbox.org, specify virtualbox instead virtualbox-ose# modprobe vboxdrv
During module-assistant auto-install (m-a a-i) of vboxdrv module, kernel headers of the running kernel are used to create the module. Then modprobe add plug vboxdrv to the running kernel. If something going wrong in this phase, follow the on screen instruction from the module assistant. Make sure you’ve downloaded the right kernel headers (module assistant should automatically do this, i.e. installing linux-headers-2.6.22-3-k7 for linux-image-2.6.22-3-k7), elsewhere module build cannot be completed.
- Now you can try to run
virtualbox-ose. After you’ve created and run a virtual machine, you can get a message asking you to check dmesg. Open a root shell and typedmesg | grep vbox. The error message ask you to add a kernel command line about NMI watchdog. If it’s your case, do this:- # gedit /boot/grub/menu.lst
- Find a line like
kopt=...and add, before all, the required command:nmi_watchdog=0and save. DO NOT uncomment the line, update-grub make the dirty job for you. # update-grub- Reboot
- Reading the dmesg, you find:
$ dmesg | grep vbox vboxdrv: Trying to deactivate the NMI watchdog permanently... vboxdrv: Successfully done.
This meant that NMI issue is solved.
- Now you can run successfully the virtual machine. Enjoy virtualization!
After installation:
- The vboxusers group
- If you want to allow your unprivileged user to use virtualbox, do:
# sudo adduser `whoami` vboxusersAdd to vboxusers group any other user you want to use this. - Install VirtualBox Guest Additions on Guest
- If you want to enable some advanced features, like mouse and screen resolution tweaks, you’ve to install VirtualBox Guest Additions in the guest virtual machine. If you run a Windows virtual machine, you can get the precompiled (.exe) installer from this dedicated Google Code projectAfter you reboot guest, VirtualBox enable the advanced functionalities, like seamless mode for mouse pointer and a wide range of resolution and colors for the emulated VM video card.
- Update: Well, you can also download Guest Additions from the dropdown menu (Devices) of a running guest. You’ll get a CD image to mount on virtual machine with all the packages you’ve to install.
Note: Virtualbox guest additions on the “host” (real) machine has no effect: if during boot you get the “Not in a virtual machine” error from guest additions, it simply means that your OS run on a host machine, not in a guest one.
See also:

Recent Comments