VirtualBox - RTR3InitEx non riuscito con rc = -1912 (rc = -1912)


55

Ho installato VirtualBox Version 5.1.18 r114002 (Qt5.5.1)su Ubuntu 16.04 LTS. Virtualizzare tutto (Kali, Windows 10).

Riscontro il seguente errore:

RTR3InitEx non riuscito con rc = -1912 (rc = -1912)

I moduli del kernel di VirtualBox non corrispondono a questa versione di VirtualBox. Sembra che l'installazione di VirtualBox non abbia avuto successo. Esecuzione

'/ Sbin / vboxconfig'

può correggere questo. Assicurarsi di non mescolare la versione OSE e la versione PUEL di VirtualBox.

dove: supR3HardenedMainInitRuntime cosa: 4 VERR_VM_DRIVER_VERSION_MISMATCH (-1912) - Il driver di supporto installato non corrisponde alla versione dell'utente. inserisci qui la descrizione dell'immagine

  • Cosa causa questo problema?
  • Come si può risolvere questo problema?

Quando corro dpkg --list virtualbox-*nel terminal, ottengo:

 Desired=Unknown/Install/Remove/Purge/Hold  
 | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend     
 |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)  
 ||/ Name       Version      Architecture Description
 +++-==============-============-============-================================= 
 rc  virtualbox-5.0 5.0.32-11293 i386         Oracle VM VirtualBox 
 rc  virtualbox-5.1 5.1.18-11400 i386         Oracle VM VirtualBox  
 un virtualbox-gue <none>       <none>       (no description available)
 un virtualbox-gue <none>       <none>       (no description available)
 un virtualbox-ose <none>       <none>       (no description available)

Hai letto il messaggio di errore? dice che eseguo il /sbin/vboxconfigmio corretto questo. l'ultima versione di virtualbox nel repository è 5.0.32:, suggerisco di installare il vbox dal repository ufficiale.
Ravexina,

L'errore indica che la macchina virtuale è stata installata in una versione di VirtualBox diversa dall'installazione attuale. Ciò potrebbe derivare dal mixare OSE (repository Ubuntu) e la versione PUEL (dopo l'installazione da Oracle incluso il pacchetto di estensione) o da un'architettura diversa (32 vs 64 bit) - difficile da dire senza sapere cosa hai fatto prima che si verificasse l'errore.
Takkat,

@Ravexina Ho rimosso 5.1.18e installato 5.0.32ma ottengo l'errore precedente.
Ali Hesari,

@Ravexina Corro dpkg --list virtualbox-*e ho aggiornato la mia domanda.
Ali Hesari,

1
Sembra che tu abbia ancora installato 5.1, esegui sudo apt-get autoremove --purge virtualbox-5.1:, quindi rimuovi i repository non ufficiali e installa virtualbox.
Ravexina,

Risposte:


69

Sembra che la versione di installazione di virtualbox sia per l'architettura a 32 bit mentre si esegue il sistema operativo a 64 bit che può essere la causa di questo problema.

La mia soluzione alternativa sarebbe quella di rimuovere la versione installata da PPA e installare virtualbox dai repository ufficiali.

Per rimuovere virtualbox, eseguire:

sudo apt autoremove --purge virtualbox*

Successivamente, assicurati che non vi siano altre versioni installate sul tuo sistema:

dpkg -l 'virtualbox*' | grep ^i

Non dovresti ottenere alcun output, inoltre puoi provare a eseguire virtualbox per assicurarti che non sia installato.

Quindi rimuovere tutti i PPA correlati dalla directory sources.liste sources.list.d. ex:

mkdir ~/apt-tmp
sudo mv /etc/apt/sources.list.d/* ~/apt-tmp

Assicurati che non ci sia nulla tranne le fonti dei repository ufficiali in /etc/apt/sources.list.

E aggiorna le tue fonti:

sudo apt update

Ora possiamo cercare per vedere quali versioni sono disponibili per l'installazione:

apt-cache madison virtualbox | grep -iv sources

Che produce un output come questo:

virtualbox | 5.0.32-dfsg-0ubuntu1.16.04.2 | http://mirrors.kernel.org/ubuntu xenial-updates/multiverse amd64 Packages
virtualbox | 5.0.18-dfsg-2build1 | http://mirrors.kernel.org/ubuntu xenial/multiverse amd64 Packages

Quindi installerei l'ultima versione menzionata in xenial-updates:

sudo apt install virtualbox=5.0.32-dfsg-0ubuntu1.16.04.2

Inoltre sudo apt install virtualbox, andrebbe bene, ma andrei con il comando sopra per assicurarmi che la mia versione desiderata verrà installata.

E dopo tutto, controlla che sia installata la versione corretta.

Dalla riga di comando:

dpkg -l virtualbox* | grep ^i

ii  virtualbox                     5.0.32-dfsg-0ubuntu1.16.04.2 amd64        x86 virtualization solution - base binaries
ii  virtualbox-dkms                5.0.32-dfsg-0ubuntu1.16.04.2 all          x86 virtualization solution - kernel module sources for dkms
ii  virtualbox-qt                  5.0.32-dfsg-0ubuntu1.16.04.2 amd64        x86 virtualization solution - Qt based user interface

Dalla GUI: per assicurarsi che sia in esecuzione la versione corretta.

Menu Help -> about virtualbox

Presta attenzione all'evidenziazione verde

vbox


Grazie per la risposta Corro apt-cache madison virtualbox | grep -iv sources ma non ho ottenuto l'output !!! nessun problema?
Ali Hesari,

Dovresti ottenere un output come il mio esempio, aggiungere questo output di comandi alla tua domanda cat /etc/apt/sources.list.
Ravexina,

4
sudo mv /etc/apt/sources.list.d/* ~/apt-tmpfacendo questo, sudo apt-get installnon installerà nessun altro software dopo. Quindi non dimenticare di spostarlo indietro
Asme Solo il

Ho affrontato lo stesso problema, con qualche terza parte adatta al retro, grazie mille per come rimuoverlo! Detto questo, è già possibile installare 5.1 in mode dirette, vedi la mia risposta qui .
Frank Nocke,

Ho seguito le tue istruzioni e installato virtualbox ma non sono in grado di installare aggiunte guest
Sugumar Venkatesan,

56

Se hai installato VirtualBox dal manuale ufficiale e non hai dimenticato di eliminare quello installato dal repository Ubuntu predefinito.

Verifica se virtualbox-dkmsè installato:

dpkg -l | grep virtualbox-dkms

Se sì, quindi eliminalo e installalo dkms

sudo apt-get purge virtualbox-dkms && \
sudo apt-get install dkms

Ricostruisci i moduli del kernel VirtualBox:

sudo /sbin/vboxconfig 

11
Grazie. Ha funzionato per me e dovrebbe essere la risposta selezionata.
user3751385

1
Questo ha funzionato perfettamente! Più facile della risposta accettata e più corretta.
Andreas Wederbrand,

1
La risposta accettata soddisfa i requisiti del PO per risolvere il problema. Questo è generale e potrebbe non funzionare per OP.
Ravexina,

Mi ha aiutato a salvare virtualbox dallo stesso errore. ho aggiornato da 5.2 a 6.0 dopo che ho iniziato a ricevere quell'errore.
lovalim

Mi ha aiutato per vbox6 il 18.04.2
Troublemaker-DV

9

Quindi, nel mio caso, i moduli del kernel non sono stati rimossi correttamente.

Ecco i dettagli:

root@Dell5280 [~]# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS

root@Dell5280 [~]# uname -r
4.13.0-31-generic

Problema:

root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
version: 5.0.40_Ubuntu r115130 (0x00240000)
license: GPL
description: Oracle VM VirtualBox Support Driver
author: Oracle Corporation
srcversion: 6D8B4900A693FC50489A130
depends:
name: vboxdrv
vermagic: 4.13.0-31-generic SMP mod_unload

FIX:

root@Dell5280 [~]# rm /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko

root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
modinfo: ERROR: could not get modinfo from 'vboxdrv': No such file or directory
[1] root@Dell5280 [~]# /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: Starting VirtualBox services.

root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/misc/vboxdrv.ko
version: 5.2.7 r120349 (0x00290000)
license: GPL
description: Oracle VM VirtualBox Support Driver
author: Oracle Corporation
srcversion: 4880B21EFF1B605D6402982
depends:
name: vboxdrv
vermagic: 4.13.0-31-generic SMP mod_unload
parm: force_async_tsc:force the asynchronous TSC mode (int)

Dopo questo, tutto funziona (almeno nel mio caso)

Spero che sia d'aiuto. Nascondi Visualizza il registro delle attività completo

Ho pubblicato la risposta su https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1736116


Non so quante volte ho disinstallato e reinstallato e l'errore persiste. Questo era quello di cui avevo bisogno. Grazie, Andy :)
Phil Cairns il

5

Sembra che tu abbia due versioni separate di VirtualBox installate sul tuo sistema!

Consiglierei di disinstallare completamente tutte le versioni di VirtualBox:

sudo apt-get autoremove 'virtualbox*'

Quindi reinstallare direttamente dalla virtualbox Oracle. Vai alla pagina di download VB , scorri verso il basso fino a " Distribuzioni Linux basate su Debian " e segui le istruzioni o scarica il pacchetto binario VB per tutte le distribuzioni, quindi esegui il programma di installazione in questo modo:

cd /path/to/downloaded/file
chmod +x VirtualBox-x.x.xx-xxxxxx-Linux_xxxxx.run
./VirtualBox-x.x.xx-xxxxxx-Linux_xxxxx.run

2

Verifica di avere moduli vbox caricati:

lsmod | grep vbox

Sulla mia macchina, ho vboxpci, vboxnetadp, vboxnetflt, evboxdrv

Controlla se sono la versione corretta:

modinfo vboxdrv

Molto probabilmente la versione di questo modulo sarebbe 5.0.32 rxxxxxx, ma si esegue virtualbox 5.1

In caso contrario, questa risposta potrebbe non aiutare a risolvere il problema.

In caso contrario, ciò potrebbe essere causato dalla mancata rimozione dei moduli lasciati dalla virtualbox della versione precedente e i nuovi moduli non vengono sovrascritti.

Basta rimuovere tutti quei vecchi moduli e riavviare, e dovrebbe risolvere il problema:

# This command list all files in the same directory of the vboxdrv module
# Double check they are all vbox* modules and are outdated
# Then change "ls" to "rm" to remove all
ls $(dirname $(modinfo vboxdrv | sed -n 's/filename: *(\.*\)/\1/p'))/*

2

dopo l'aggiornamento a 6.0 è apparso anche questo messaggio. Se non lo hai fatto, riavvia il sistema in modo che tutti i nuovi moduli vengano caricati nel kernel. A volte è così semplice.


1

Se reinstallare Virtualbox non funziona. Dovresti provare a installare o reinstallare dkmsVirtualbox

verifica se presentano errori:

dpkg -P virtualbox-dkms

Se hai un errore probabilmente dovresti provare a fare:

sudo apt-get install virtualbox-dkms

1

Se si desidera utilizzare l'ultima versione di virtualbox, è necessario rimuovere i moduli nella cartella dkms.

VB 5.1 e precedenti mettono i moduli in errore mentre VB 5.0 nel fork li memorizza nella cartella dkms .

  1. Elimina tutta la virtualbox con apt
  2. Controlla modinfo vboxdrvse esce versione 5.0 :

    $ modinfo vboxdrv
    filename: /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
    version: 5.0.40_Ubuntu r115130 (0x00240000)
    license: GPL
    description: Oracle VM VirtualBox Support Driver
    author: Oracle Corporation
    srcversion: 6D8B4900A693FC50489A130
    depends:
    name: vboxdrv
    vermagic: 4.13.0-31-generic SMP mod_unload
     parm:           force_async_tsc:force the asynchronous TSC mode (int)
    
  3. Se produce 5.0 , elimina i moduli nella cartella dkms:

    $ sudo -i
    # sudo rmmod vboxnetadp vboxnetflt vboxpci vboxdrv 
    # cd /lib/modules/(kernelversion)-generic/updates/dkms
    # rm vbox*
    
  4. Esegui sudo /sbin/rcvboxdrv setup(quindi controlla se modinfo vboxdrvfornisce la versione corretta)

    $ modinfo vboxdrv
    filename:       /lib/modules/4.10.0-42-generic/misc/vboxdrv.ko
    version:        5.2.6 r120293 (0x00290000)
    license:        GPL
    description:    Oracle VM VirtualBox Support Driver
    author:         Oracle Corporation
    srcversion:     4880B21EFF1B605D6402982
    depends:        
    vermagic:       4.10.0-42-generic SMP mod_unload 
    parm:           force_async_tsc:force the asynchronous TSC mode (int)
    

1

Ho rimosso virtualbox utilizzando il comando indicato di seguito:

sudo apt autoremove --purge virtualbox*

ma non ha funzionato.

Ho scoperto che la vecchia mod vboxdrv non veniva rimossa e dovevo rimuovere manualmente vboxdrv.ko da "/ lib / modules / $ (uname -r) / updates / dkms /".


1

un semplice ha apt upgrade virtualboxfunzionato per me

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.