VirtualBox - RTR3InitEx ล้มเหลวด้วย rc = -1912 (rc = -1912)


55

ฉันได้ติดตั้ง VirtualBox Version 5.1.18 r114002 (Qt5.5.1)บน Ubuntu 16.04 LTSแล้ว เพื่อจำลองทุกอย่าง (Kali, Windows 10)

ฉันพบข้อผิดพลาดต่อไปนี้:

RTR3InitEx ล้มเหลวด้วย rc = -1912 (rc = -1912)

โมดูลเคอร์เนล VirtualBox ไม่ตรงกับ VirtualBox เวอร์ชันนี้ เห็นได้ชัดว่าการติดตั้ง VirtualBox ไม่สำเร็จ การดำเนินการ

'/ sbin / vboxconfig'

อาจแก้ไขสิ่งนี้ ตรวจสอบให้แน่ใจว่าคุณไม่ได้ผสมเวอร์ชั่น OSE และ VirtualBox เวอร์ชัน PUEL

โดยที่: supR3HardenedMainInitRuntime what: 4 VERR_VM_DRIVER_VERSION_MISMATCH (-1912) - ไดรเวอร์การสนับสนุนที่ติดตั้งไม่ตรงกับรุ่นของผู้ใช้ ป้อนคำอธิบายรูปภาพที่นี่

  • ทำให้เกิดปัญหานี้คืออะไร?
  • ปัญหานี้จะแก้ไขได้อย่างไร?

เมื่อฉันทำงานdpkg --list virtualbox-*ใน terminal ฉันได้รับ:

 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)

คุณอ่านข้อความแสดงข้อผิดพลาดหรือไม่? มันบอกว่ากำลังดำเนินการ/sbin/vboxconfigแก้ไขให้ถูกต้อง virtualbox รุ่นสุดท้ายในที่เก็บคือ: 5.0.32ผมขอแนะนำให้ติดตั้ง vbox จากแหล่งเก็บข้อมูลอย่างเป็นทางการ
Ravexina

ข้อผิดพลาดระบุว่าเครื่องเสมือนของคุณได้รับการติดตั้งในรุ่น VirtualBox ที่แตกต่างจากการติดตั้งปัจจุบันของคุณ สิ่งนี้อาจมาจากการผสม OSE (ที่เก็บ Ubuntu) และรุ่น PUEL (หลังจากติดตั้งจาก Oracle รวมถึงส่วนขยายแพ็ค) หรือจากสถาปัตยกรรมที่แตกต่าง (32 กับ 64 บิต) - ยากที่จะพูดโดยไม่ทราบว่าคุณทำอะไรก่อนเกิดข้อผิดพลาด
Takkat

@Ravexina ฉันได้ลบ5.1.18และติดตั้งแล้ว5.0.32แต่ได้รับข้อผิดพลาดก่อนหน้า
Ali Hesari

@Ravexina ฉันเรียกใช้dpkg --list virtualbox-*และอัปเดตคำถามของฉัน
Ali Hesari

1
ดูเหมือนว่าคุณยังมีการติดตั้ง 5.1, รัน: sudo apt-get autoremove --purge virtualbox-5.1, จากนั้นลบที่เก็บที่ไม่เป็นทางการและติดตั้ง Virtualbox
Ravexina

คำตอบ:


69

ดูเหมือนว่าเวอร์ชันการติดตั้ง virtualbox ของคุณนั้นมีไว้สำหรับสถาปัตยกรรมแบบ 32 บิตในขณะที่คุณใช้ระบบปฏิบัติการ 64 บิตซึ่งอาจเป็นสาเหตุของปัญหานี้

วิธีแก้ปัญหาของฉันคือการลบเวอร์ชันที่ติดตั้งออกจาก PPA และติดตั้ง Virtualbox จากที่เก็บข้อมูลอย่างเป็นทางการ

ในการลบ virtualbox ให้เรียกใช้:

sudo apt autoremove --purge virtualbox*

หลังจากนั้นตรวจสอบให้แน่ใจว่าไม่มีเวอร์ชั่นอื่นติดตั้งอยู่ในระบบของคุณโดย:

dpkg -l 'virtualbox*' | grep ^i

คุณไม่ควรรับเอาต์พุตใด ๆ และคุณสามารถลองใช้ virtualbox เพื่อให้แน่ใจว่าไม่ได้ติดตั้ง

จากนั้นลบ PPA ที่เกี่ยวข้องทั้งหมดออกจากsources.listและsources.list.dไดเรกทอรีของคุณ อดีต:

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

/etc/apt/sources.listตรวจสอบว่ามีอะไรนอกจากแหล่งเก็บอย่างเป็นทางการใน

และอัปเดตแหล่งที่มาของคุณ:

sudo apt update

ตอนนี้เราสามารถค้นหาเพื่อดูว่ามีเวอร์ชันใดให้ติดตั้ง:

apt-cache madison virtualbox | grep -iv sources

ซึ่งก่อให้เกิดผลลัพธ์เช่นนี้

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

จากนั้นฉันจะติดตั้งเวอร์ชันล่าสุดที่กล่าวถึงในxenial-updates:

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

ยังsudo apt install virtualboxจะใช้ได้ แต่ฉันจะไปกับคำสั่งข้างต้นเพื่อให้แน่ใจว่ารุ่นที่ฉันต้องการจะถูกติดตั้ง

และหลังจากทั้งหมดตรวจสอบว่ามีการติดตั้งรุ่นที่ถูกต้อง

จากบรรทัดคำสั่ง:

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

จาก GUI:เพื่อให้แน่ใจว่าเวอร์ชันที่ถูกต้องทำงานอยู่

เมนูช่วยเหลือ -> เกี่ยวกับ Virtualbox

ใส่ใจกับไฮไลท์สีเขียว

VBox


ขอบคุณสำหรับคำตอบ ฉันเรียกใช้apt-cache madison virtualbox | grep -iv sources แต่ฉันไม่ได้รับผลลัพธ์ !!! ไม่มีปัญหา?
Ali Hesari

cat /etc/apt/sources.listคุณควรจะได้รับการส่งออกเป็นตัวอย่างของฉันให้เพิ่มคำสั่งนี้ส่งออกไปยังคำถามของคุณ
Ravexina

4
sudo mv /etc/apt/sources.list.d/* ~/apt-tmpด้วยการทำเช่นนี้sudo apt-get installจะไม่ติดตั้งซอฟต์แวร์อื่นหลังจากนั้น ดังนั้นอย่าลืมย้ายกลับ
Asme เพิ่ง

วิ่งเข้าไปในปัญหาเดียวกันกับบุคคลที่สามย้อนยุคไปได้ดีขอบคุณกองในวิธีการลบออก! ต้องบอกว่ามันมีอยู่แล้วเป็นไปได้ในการติดตั้ง5.1ในแฟชั่นโดยตรงดูคำตอบของฉันที่นี่
Frank Nocke

ฉันทำตามคำแนะนำของคุณและติดตั้ง Virtualbox แล้ว แต่ฉันไม่สามารถติดตั้งข้อมูลเพิ่มเติมจากแขกได้
Sugumar Venkatesan

55

หากคุณติดตั้ง VirtualBox ด้วยตนเองอย่างเป็นทางการและไม่ลืมที่จะลบหนึ่งติดตั้งจากที่เก็บเริ่มต้นของ Ubuntu

ตรวจสอบว่าvirtualbox-dkmsมีการติดตั้ง:

dpkg -l | grep virtualbox-dkms

ถ้าใช่ให้ลบแล้วติดตั้ง dkms

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

สร้างโมดูลเคอร์เนล VirtualBox อีกครั้ง:

sudo /sbin/vboxconfig 

11
ขอบคุณ ทำงานให้ฉันและควรเป็นคำตอบที่เลือก
user3751385

1
มันทำงานได้อย่างสมบูรณ์แบบ! ง่ายกว่าคำตอบที่ยอมรับและถูกต้องมากขึ้น
Andreas Wederbrand

1
คำตอบที่ยอมรับนั้นเหมาะสมกับข้อกำหนดของ OP เพื่อแก้ไขปัญหา อันนี้เป็นอันทั่วไปที่อาจใช้ไม่ได้กับ OP
Ravexina

ช่วยฉันในการช่วยเหลือกล่องเสมือนจากข้อผิดพลาดเดียวกัน ฉันอัพเกรดจาก 5.2 เป็น 6.0 หลังจากนั้นฉันเริ่มรับข้อผิดพลาดนั้น
lovalim

มันช่วยให้ผมสำหรับ vbox6 บน 18.04.2
Troublemaker-DV

9

ดังนั้นในกรณีของฉันโมดูลเคอร์เนลจึงไม่ถูกลบอย่างถูกต้อง

นี่คือรายละเอียด:

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

ปัญหา:

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

การแก้ไข:

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)

หลังจากนี้ทุกอย่างทำงานได้ (อย่างน้อยในกรณีของฉัน)

หวังว่ามันจะช่วย ซ่อนดูบันทึกกิจกรรมแบบเต็ม

ฉันโพสต์คำตอบที่https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1736116


ฉันไม่รู้ว่าฉันถอนการติดตั้งและติดตั้งใหม่กี่ครั้งและยังคงมีข้อผิดพลาดอยู่ นี่คือสิ่งที่ฉันต้องการ ขอบคุณ Andy :)
Phil Cairns

5

ดูเหมือนว่าคุณติดตั้ง VirtualBox สองรุ่นแยกกันในระบบของคุณ!

ฉันอยากจะแนะนำให้คุณถอนการติดตั้ง VirtualBox ทุกรุ่นอย่างสมบูรณ์:

sudo apt-get autoremove 'virtualbox*'

จากนั้นติดตั้งใหม่โดยตรงจาก Oracle virtualbox ไปที่หน้าดาวน์โหลด VBเลื่อนลงไปที่ " การกระจายบน Linux แบบเดเบียน " และทำตามคำแนะนำหรือดาวน์โหลด VB แพ็คเกจไบนารีสำหรับการกระจายทั้งหมดแล้วเรียกใช้โปรแกรมติดตั้งดังนี้:

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

2

ตรวจสอบว่าคุณได้โหลดโมดูล vbox แล้ว:

lsmod | grep vbox

ในเครื่องของฉันฉันมีvboxpci, vboxnetadp, vboxnetfltและvboxdrv

ตรวจสอบว่าเป็นรุ่นที่ถูกต้องหรือไม่:

modinfo vboxdrv

มีโอกาสมากที่รุ่นของโมดูลนี้จะเป็น5.0.32 rxxxxxxแต่คุณใช้ virtualbox 5.1

หากไม่ใช่กรณีนี้คำตอบนี้อาจไม่ช่วยแก้ปัญหาของคุณ

มิฉะนั้นอาจเกิดจากการไม่ลบโมดูลที่หลงเหลืออยู่โดย VirtualBox เวอร์ชันเก่าของคุณและโมดูลใหม่จะไม่เขียนทับ

เพียงลบโมดูลเก่าทั้งหมดแล้วรีบูตและมันควรแก้ไขปัญหา:

# 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

หลังจากอัปเดตเป็น 6.0 ข้อความนี้ก็ปรากฏขึ้น ในกรณีที่คุณไม่ทำให้รีสตาร์ทระบบเพื่อโหลดโมดูลใหม่ทั้งหมดลงในเคอร์เนล บางครั้งมันง่ายเหมือนที่


1

หากติดตั้ง Virtualbox ไม่ทำงาน คุณควรลองติดตั้งหรือติดตั้งdkmsVirtualbox ใหม่อีกครั้ง

ตรวจสอบว่ามีข้อผิดพลาด:

dpkg -P virtualbox-dkms

หากคุณมีข้อผิดพลาดน่าจะลองทำ:

sudo apt-get install virtualbox-dkms

1

หากคุณต้องการใช้ Virtualbox เวอร์ชันล่าสุดคุณจะต้องลบโมดูลในโฟลเดอร์ dkms

VB 5.1 และโมดูลสถานที่ที่เก่ากว่าในmiscในขณะที่ VB 5.0 ในทางแยกเก็บไว้ในโฟลเดอร์dkms

  1. กำจัด virtualbox ทั้งหมดด้วยapt
  2. ตรวจสอบmodinfo vboxdrvเพื่อดูว่ามันจะออกเวอร์ชั่น 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. หากเป็นเอาต์พุต5.0ให้ลบโมดูลในโฟลเดอร์ dkms:

    $ sudo -i
    # sudo rmmod vboxnetadp vboxnetflt vboxpci vboxdrv 
    # cd /lib/modules/(kernelversion)-generic/updates/dkms
    # rm vbox*
    
  4. เรียกใช้sudo /sbin/rcvboxdrv setup(จากนั้นตรวจสอบว่าmodinfo vboxdrvให้รุ่นที่ถูกต้องหรือไม่)

    $ 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

ฉันลบ virtualbox โดยใช้คำสั่งที่ระบุด้านล่าง:

sudo apt autoremove --purge virtualbox*

แต่มันไม่ทำงาน

ฉันพบว่า mod vboxdrv เก่าไม่ได้ถูกลบออกและต้องลบ vboxdrv.ko ด้วยตนเองจาก "/ lib / modules / $ (uname -r) / updates / dkms /"


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.