Michael Horojanski
Michael Horojanski

Reputation: 4701

ERROR: could not insert 'vboxguest': No such device

I have a problem to run vboxguest on Arch linux,

I retrieve this error when type modprobe -av vboxguest:

[root@mic3ael mic3ael]# modprobe -av vboxguest
insmod /lib/modules/4.3.3-2-ARCH/extramodules/vboxguest.ko.gz
modprobe: ERROR: could not insert 'vboxguest': No such device

then I found that vguest exist on the system:

[root@mic3ael mic3ael]# find /lib/modules/ -iname "vbox*"
/lib/modules/extramodules-4.3-ARCH/vboxnetflt.ko.gz
/lib/modules/extramodules-4.3-ARCH/vboxguest.ko.gz
/lib/modules/extramodules-4.3-ARCH/vboxpci.ko.gz
/lib/modules/extramodules-4.3-ARCH/vboxnetadp.ko.gz
/lib/modules/extramodules-4.3-ARCH/vboxsf.ko.gz
/lib/modules/extramodules-4.3-ARCH/vboxvideo.ko.gz
/lib/modules/extramodules-4.3-ARCH/vboxdrv.ko.gz

The question is how to run vboxguest on arch linux?

Upvotes: 4

Views: 9846

Answers (3)

Colin Keenan
Colin Keenan

Reputation: 1149

The Arch Linux Forum post: https://bbs.archlinux.org/viewtopic.php?pid=1613118#p1613118 quickly lead to an answer. For me, Arch Linux is the host, so I should not have installed virtualbox-guest-utils which also installed virtualbox-guest-dkms as a dependency.

I removed both of those with sudo pacman -Rsn virtualbox-guest-utils.

If Arch Linux is your host, you need to install virtualbox-guest-iso in the host Arch Linux. Inside the guest OS, it will show up as a CD (or manually point/mount the virtual CD to the host OS path /usr/lib/virtualbox/additions/VBoxGuestAdditions.iso) and you can install from there to get vboxguest working.

If Arch Linux is your guest, then you apparently need to install virtualbox-guest-utils inside your Arch Linux guest OS.

Whether host or guest, virtualbox with Arch Linux now also needs linux-headers (or any of the following to match the type of kernel you are using: linux-lts-headers linux-zen-headers linux-grsec-headers).

Since the overall installation is kind of complicated, I refer you to the Arch Wiki.

Arch Linux Host: https://wiki.archlinux.org/index.php/VirtualBox#Installation_steps_for_Arch_Linux_hosts

Arch Linux Guest: https://wiki.archlinux.org/index.php/VirtualBox#Installation_steps_for_Arch_Linux_guests

Upvotes: 5

andreiS
andreiS

Reputation: 19

I had the same problem and I fixed it by reinstalling the modules with dkms:

  1. sudo dkms remove vboxhost/5.0.14
  2. sudo dkms install vboxhost/5.0.14

Upvotes: -1

Lukas Sedlak
Lukas Sedlak

Reputation: 1

Problem Description

I just had similar problem on Ubuntu (HOST) with VirtualBox running Debian (GUEST).

The problem is strongly (and confusingly) related to other tasks and errors:

  1. Change of screen resolution requires VBoxGuestAdditions installation.
  2. The installation using VirtualBox's menu Devices -> Inset Guest Additions CD (Host+D) may lead to "Unable to insert the virtual optical disk" with "(VERR_PDM_MEDIA_LOCKED)" error messages.
  3. VBoxGuestAdditions are present in many package repositories and can be installed by the package systems like apt or yum.

    [...@ubuntu]# apt-get install virtualbox-guest-additions-iso
    
  4. The installation from repo may NOT improved the resolution.

  5. Manual run of VBoxGuestAddition's main script may lead to another error

    [...@ubuntu]# /usr/share/virtualbox/VBoxLinuxAdditions.sh
    (modprobe vboxguest failed)
    
  6. The same error then comes from VBoxGuestAdditions init script

    [...@ubuntu]# /etc/init.d/vboxadd setup
    (modprobe vboxguest failed)
    
  7. The failure is caused by existing but unloaded kernel module vboxguest.ko.
  8. Manual deploying of the kernel module into kernel gives another error

    [...@ubuntu]# modprobe vboxguest
    modprobe: ERROR: could not insert 'vboxguest': No such device
    
  9. The dmesg may contain error message

    [...] vboxguest: PCI device not found, probably running on physical hardware.
    

Initial Problem

All those errors have the same initial mistake: running GUEST apps on HOST. I think its the same case for your error, because arch linux is supported by the app - see part of the /etc/init.d/vboxadd script:

if [ -f /etc/arch-release ]; then
    system=arch
elif ... 

if [ "$system" = "arch" ]; then
    USECOLOR=yes
    . /etc/rc.d/functions
    fail_msg() {
        stat_fail
    }

    succ_msg() {
        stat_done
    }

    begin() {
        stat_busy "$1"
    }
fi

Solution

Be careful about which part of VBox runs on GUEST and which one on HOST:

  1. Install VirtualBox on HOST (ubuntu in my case) as

    [...@ubuntu]# apt-get install virtualbox
    
  2. Install VBoxGuestAdditions et.al. into GUEST (debian in my case)

a) add 'contrib' repository to your repository source list

b) install virtualbox guest-related apps into GUEST

[...@debian]# apt-get install virtualbox-guest-utils virtualbox-guest-x11
    virtualbox-guest-dkms virtualbox-guest-additions-iso

GUI and Docs Criticism

The virtualization docs usually state that GUEST is independent on HOST and that VBox runs on HOST. This:

  1. Leads to misunderstanding that user never installs any part of VBox on GUEST

  2. Improves chances of user's mistake, because VBox GUI's menu

    Device -> Install Guest Additions CD

invokes feeling of software going to be installed on HOST.

Upvotes: -2

Related Questions