VirtualBox - RTR3InitEx không thành công với RC = -1912 (rc = -1912)


55

Tôi đã cài đặt VirtualBox Version 5.1.18 r114002 (Qt5.5.1)trên Ubuntu 16.04 LTS. Để ảo hóa mọi thứ (Kali, Windows 10).

Tôi gặp phải lỗi sau:

RTR3InitEx không thành công với RC = -1912 (rc = -1912)

Các mô-đun hạt nhân VirtualBox không khớp với phiên bản VirtualBox này. Việc cài đặt VirtualBox rõ ràng không thành công. Thi công

'/ sbin / vboxconfig'

có thể sửa điều này Đảm bảo rằng bạn không trộn lẫn phiên bản OSE và phiên bản PUEL của VirtualBox.

trong đó: supR3HardenedMainInitR.78 what: 4 VERR_VM_DRIVER_VERSION_MISMATCH (-1912) - Trình điều khiển hỗ trợ được cài đặt không khớp với phiên bản của người dùng. nhập mô tả hình ảnh ở đây

  • Điều gì gây ra vấn đề này?
  • Làm thế nào để giải quyết vấn đề này?

Khi tôi chạy dpkg --list virtualbox-*trong thiết bị đầu cuối, tôi nhận được:

 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)

Bạn đã đọc thông báo lỗi chưa? Nó nói thực thi /sbin/vboxconfigchính xác của tôi này. phiên bản cuối cùng của hộp ảo trong kho lưu trữ là : 5.0.32, Tôi khuyên bạn nên cài đặt vbox từ kho lưu trữ chính thức.
Ravexina

Lỗi chỉ ra rằng máy ảo của bạn đã được cài đặt trong phiên bản VirtualBox khác với cài đặt hiện tại của bạn. Điều này có thể là từ việc trộn OSE (kho lưu trữ Ubuntu) và phiên bản PUEL (sau khi cài đặt từ Oracle bao gồm gói mở rộng) hoặc từ một kiến ​​trúc khác (32 so với 64 bit) - khó có thể nói mà không biết bạn đã làm gì trước khi xảy ra lỗi.
Takkat

@Ravexina Tôi đã gỡ bỏ 5.1.18và cài đặt 5.0.32nhưng gặp Lỗi trước đó.
Ali Hesari

@Ravexina Tôi chạy dpkg --list virtualbox-*và cập nhật câu hỏi của tôi.
Ali Hesari

1
Có vẻ như bạn vẫn đã cài đặt 5.1, chạy : sudo apt-get autoremove --purge virtualbox-5.1, sau đó xóa các kho lưu trữ không chính thức và cài đặt hộp ảo.
Ravexina

Câu trả lời:


69

Có vẻ như phiên bản cài đặt của hộp ảo của bạn dành cho kiến ​​trúc 32 bit trong khi bạn đang chạy hệ điều hành 64 bit có thể là nguyên nhân của vấn đề này.

Cách giải quyết của tôi là xóa phiên bản đã cài đặt khỏi PPA và cài đặt hộp ảo từ kho chính thức.

Để xóa hộp ảo, hãy chạy:

sudo apt autoremove --purge virtualbox*

Sau đó, đảm bảo không có phiên bản nào khác được cài đặt trên hệ thống của bạn bằng cách:

dpkg -l 'virtualbox*' | grep ^i

Bạn không nên nhận bất kỳ đầu ra nào, bạn cũng có thể thử chạy hộp ảo để đảm bảo nó không được cài đặt.

Sau đó, loại bỏ tất cả các PPA có liên quan từ bạn sources.listsources.list.dthư mục. Ví dụ:

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

Hãy chắc chắn rằng không có gì ngoại trừ các nguồn lưu trữ chính thức trong /etc/apt/sources.list.

Và cập nhật nguồn của bạn:

sudo apt update

Bây giờ chúng tôi có thể tìm kiếm để xem phiên bản nào có sẵn để cài đặt:

apt-cache madison virtualbox | grep -iv sources

Mà tạo ra một đầu ra như thế này:

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

Sau đó, tôi sẽ cài đặt phiên bản cuối cùng được đề cập trong xenial-updates:

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

Ngoài ra sudo apt install virtualbox, sẽ ổn thôi, nhưng tôi sẽ sử dụng lệnh trên để đảm bảo phiên bản mong muốn của tôi sẽ được cài đặt.

Và sau tất cả, hãy kiểm tra xem phiên bản chính xác đã được cài đặt chưa.

Từ dòng lệnh:

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

Từ GUI: để đảm bảo phiên bản chính xác đang chạy.

Menu trợ giúp -> về hộp ảo

Chú ý đến màu xanh lá cây nổi bật

vbox


Cảm ơn bạn đã trả lời. Tôi chạy apt-cache madison virtualbox | grep -iv sources nhưng tôi không nhận được đầu ra !!! không vấn đề gì?
Ali Hesari

Bạn sẽ nhận được một đầu ra như ví dụ của tôi, thêm đầu ra lệnh này vào câu hỏi của bạn cat /etc/apt/sources.list.
Ravexina

4
sudo mv /etc/apt/sources.list.d/* ~/apt-tmpbằng cách này, sudo apt-get installsẽ không cài đặt bất kỳ phần mềm nào khác sau đó. Vì vậy, đừng quên di chuyển nó trở lại
Asme Chỉ cần

Gặp vấn đề tương tự, với một số apt retro của bên thứ 3, cảm ơn rất nhiều về cách loại bỏ nó! Phải nói rằng, đã có thể, để cài đặt 5.1 trong thời trang trực tiếp, xem câu trả lời của tôi ở đây .
Frank Nocke

Tôi đã làm theo hướng dẫn của bạn và cài đặt hộp ảo nhưng tôi không thể cài đặt bổ sung cho khách
Sugumar Venkatesan

55

Nếu bạn đã cài đặt VirtualBox theo hướng dẫn chính thức và không quên xóa cài đặt từ kho lưu trữ Ubuntu mặc định.

Kiểm tra nếu virtualbox-dkmsđược cài đặt:

dpkg -l | grep virtualbox-dkms

Nếu có, sau đó xóa nó và cài đặt dkms

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

Xây dựng lại các mô-đun hạt nhân VirtualBox:

sudo /sbin/vboxconfig 

11
Cảm ơn. Làm việc cho tôi và nên là câu trả lời được lựa chọn.
dùng3751385

1
Điều này làm việc hoàn hảo! Dễ dàng hơn câu trả lời được chấp nhận, và chính xác hơn.
Andreas Wederbrand

1
Câu trả lời được chấp nhận phù hợp với yêu cầu của OP để khắc phục vấn đề. Đây là một cái chung có thể không hoạt động cho OP.
Ravexina

Đã giúp tôi trong việc giải cứu hộp ảo từ cùng một lỗi. tôi đã nâng cấp từ 5.2 lên 6.0 sau đó tôi bắt đầu gặp lỗi đó.
lovalim

Nó đã giúp tôi cho vbox6 vào ngày 18.04.2
gây rối-DV

9

Vì vậy, trong trường hợp của tôi, các mô-đun hạt nhân không được loại bỏ đúng cách.

Đây là những thông tin chi tiết:

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

Vấn đề:

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

SỬA CHỮA:

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)

Sau này, mọi thứ đều hoạt động (ít nhất là trong trường hợp của tôi)

Hy vọng nó giúp. Ẩn Xem nhật ký hoạt động đầy đủ

Tôi đã đăng bài trả lời tại https://bugs.launchpad.net/ubfox/+source/virtualbox/+orms/1736116


Tôi không biết bao nhiêu lần tôi gỡ cài đặt và cài đặt lại, và vẫn còn lỗi. Đây là những gì tôi cần. Cảm ơn, Andy :)
Phil Cairns

5

Có vẻ như bạn có hai phiên bản VirtualBox riêng biệt được cài đặt trên hệ thống của bạn!

Tôi khuyên bạn nên gỡ cài đặt hoàn toàn tất cả các phiên bản VirtualBox:

sudo apt-get autoremove 'virtualbox*'

Sau đó cài đặt lại trực tiếp từ hộp ảo Oracle. Chuyển đến trang tải xuống VB , cuộn xuống " Phân phối Linux dựa trên Debian " và làm theo hướng dẫn hoặc tải xuống gói nhị phân VB cho tất cả các bản phân phối và sau đó chạy trình cài đặt như sau:

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

2

Kiểm tra xem bạn đã tải mô-đun vbox chưa:

lsmod | grep vbox

Trên máy tính của tôi, tôi có vboxpci, vboxnetadp, vboxnetflt, vàvboxdrv

Kiểm tra xem chúng có phải là phiên bản chính xác không:

modinfo vboxdrv

Rất có khả năng phiên bản của mô-đun này sẽ có 5.0.32 rxxxxxx, nhưng bạn đang chạy hộp ảo 5.1

Nếu đây không phải là trường hợp, câu trả lời này có thể không giúp giải quyết vấn đề của bạn.

Mặt khác, điều này có thể xảy ra do không xóa các mô-đun còn lại trong hộp ảo phiên bản cũ của bạn và các mô-đun mới không ghi đè.

Chỉ cần xóa tất cả các mô-đun cũ và khởi động lại, và nó sẽ khắc phục vấn đề:

# 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

Sau khi cập nhật lên 6.0, thông báo này cũng xuất hiện. Trong trường hợp bạn không làm điều đó, hãy khởi động lại hệ thống của bạn để tất cả các mô-đun mới được tải vào kernel. Đôi khi nó đơn giản như thế.


1

Nếu cài đặt lại Virtualbox không hoạt động. Bạn nên thử cài đặt hoặc cài đặt lại dkmsVirtualbox

xác minh nếu có lỗi:

dpkg -P virtualbox-dkms

Nếu bạn có lỗi có lẽ nên thử làm:

sudo apt-get install virtualbox-dkms

1

Nếu bạn muốn sử dụng phiên bản mới nhất của hộp ảo, bạn cần xóa các mô-đun trong thư mục dkms.

VB 5.1 trở lên đặt các mô-đun trong linh tinh trong khi VB 5.0 trong ngã ba lưu trữ chúng trong thư mục dkms .

  1. Lọc tất cả các hộp ảo với apt
  2. Kiểm tra modinfo vboxdrvxem nếu nó xuất ra phiên bản 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. Nếu nó xuất ra 5.0 , hãy xóa các mô-đun trong thư mục dkms:

    $ sudo -i
    # sudo rmmod vboxnetadp vboxnetflt vboxpci vboxdrv 
    # cd /lib/modules/(kernelversion)-generic/updates/dkms
    # rm vbox*
    
  4. Chạy sudo /sbin/rcvboxdrv setup(sau đó kiểm tra xem có modinfo vboxdrvcung cấp phiên bản chính xác không)

    $ 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

Tôi đã loại bỏ hộp ảo bằng cách sử dụng lệnh được đưa ra dưới đây:

sudo apt autoremove --purge virtualbox*

nhưng nó không hoạt động.

Tôi thấy rằng mod vboxdrv cũ không bị xóa và phải xóa thủ công vboxdrv.ko khỏi "/ lib / mô-đun / $ (uname -r) / update / dkms /".


1

một apt upgrade virtualboxcông việc đơn giản cho tôi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.