VirtualBox 5.0.40 powoduje awarię całego hosta od czasu aktualizacji do jądra 4.13.0-26-generic

23

Otrzymałem aktualizacje za pośrednictwem zwykłego narzędzia do aktualizacji oprogramowania, 10 stycznia 2018 r. Po tym VirtualBox nie uruchomiłby żadnej maszyny wirtualnej, narzekając na dkms i prosząc o utworzenie modprobe vboxdrv. Zgodnie z radą ponownie zainstalowałem virtualbox-dkms za pomocą:

sudo apt-get --reinstall install virtualbox-dkms

Po tym i ponownym uruchomieniu próbowałem uruchomić maszynę wirtualną, która zamroziła całą maszynę i konieczne było ponowne uruchomienie komputera.

Czy istnieje sposób, aby VirtualBox działał z najnowszymi jądrami?

EDYTOWAĆ:

Zgodnie z sugestią N0rbert polecenie:

apt-cache policy `dpkg -S VirtualBox | głowa -n1 | sed -e 's /: // g' | awk '{print $ 1}' '

daje:

virtualbox-qt:
  Zainstalowano: 5.0.40-dfsg-0ubuntu1.16.04.2
  Kandydat: 5.0.40-dfsg-0ubuntu1.16.04.2
  Tabela wersji:
 *** 5.0.40-dfsg-0ubuntu1.16.04.2 500
        500 http://fr.archive.ubuntu.com/ubuntu xenial-updates / multiverse amd64 Packages
        100 / var / lib / dpkg / status
     5.0.18-dfsg-2build1 500
        500 http://fr.archive.ubuntu.com/ubuntu Xenial / multiverse amd64 Packages

EDYCJA (w dniu 29 marca 2018 r.): Problem został dla mnie rozwiązany, dzięki Ubuntu Ubdate od dziś. Widziałem, że ma kilka aktualizacji Virtualbox, dlatego ponownie spróbowałem uruchomić najnowszą wersję jądra. Potem musiałem biec

sudo apt-get - reinstall zainstaluj virtualbox-dkms

A potem moje wirtualne maszyny w VirtualBoxie zaczęły działać bez awarii całego komputera. Wreszcie!

Max von Anon
źródło
Spróbuj zaktualizować virtualbox do bieżącej wersji 5.2.4. W międzyczasie rozwiązano niektóre problemy dotyczące jądra dla nowszych jąder.
Takkat
1
@Takkat: Ale I VirtualBox 5.2.4 nie jest częścią Ubuntu 16.04 - właśnie spojrzałem na synaptic !? Celowo wybrałem VirtualBox z dystrybucji Ubuntu, aby był zsynchronizowany z jądrem i unikał takich bólów głowy.
Max von Anon
2
Proszę zaktualizować swój wpis wyjścia: apt-cache policy `dpkg -S VirtualBox | head -n1 | sed -e 's/://g' | awk '{print $1}'`.
N0rbert
2
Przekonałem się, że KVM / QEMU jest znacznie bardziej stabilny w przypadku aktualizacji jądra - cena, którą za to płacę, to brak obsługi akceleracji grafiki 3D.
Charles Green

Odpowiedzi:

21

Aktualizacja do VirtualBox 5.2 przy użyciu repozytorium oracle działała dla mnie.

Oto kroki ( starszy dokument tutaj ):

1) Dodaj repozytorium wyroczni:

sudo add-apt-repository "deb http://download.virtualbox.org/virtualbox/debian xenial contrib"

Zmodyfikuj to polecenie, aby dostosować je do swojej wersji ubuntu, jeśli nie używasz Ubuntu 16.04 (xenial).

2) Dodaj klucze GPG do repozytorium:

wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -

3) Sprawdź klucze GPG:

sudo apt-key finger Oracle

powinien dać pokazać następujące odciski palców:

B9F8 D658 297A F3EF C18D  5CDF A2F6 83C5 2980 AECF
Oracle Corporation (VirtualBox archive signing key) 

7B0F AB3A 13B9 0743 5925  D9C9 5442 2A4B 98AB 5139
Oracle Corporation (VirtualBox archive signing key)

4) Zainstaluj VirtualBox 5.2

sudo apt update && sudo apt install virtualbox-5.2

W moim przypadku miałem błędy i musiałem usunąć pakiet virtualbox-dkms i uruchomić / sbin / vboxconfig:

sudo apt remove --purge virtualbox-dkms
sudo  /sbin/vboxconfig

W zależności od środowiska pulpitu ikona menu uruchamiania mogła zniknąć. W takim przypadku utwórz go ponownie ręcznie; polecenie jest po prostu virtualbox.

Max
źródło
1
Musiałem także zainstalować pakiet rozszerzeń 5.2, taki jak ten:curl -O http://download.virtualbox.org/virtualbox/5.2.0/Oracle_VM_VirtualBox_Extension_Pack-5.2.0-118431.vbox-extpack ; sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.0-118431.vbox-extpack
207863
1
To działa dla mnie. Mimo to, jeśli wolisz nie tracić czasu na pobieranie, instalowanie i konfigurowanie, zobacz @therefriedbean post.
twnaing
W pierwszym kroku sudo echo "..." > /etc/..nie będzie działać, gdy zostanie uruchomiony jako zwykły użytkownik, ponieważ echodziała tylko w trybie sudo. IMO najlepszym sposobem na echo "..." | tee -a /etc/...
poradzenie
@EvanED Dzięki, zredagowałem moją odpowiedź, add-apt-repositoryktóra moim zdaniem jest bardziej zrozumiała. Dla tych, którzy chcą użyć sources.list.dpolecenia, jest echo "deb http://download.virtualbox.org/virtualbox/debian xenial contrib" | sudo tee /etc/apt/sources.list.d/oracle-virtualbox.list.
Max
1
Po zainstalowaniu nowszej wersji moje maszyny wirtualne nadal się nie uruchamiają. Zobacz odpowiedź Andy'ego, jak to naprawić.
MakisH
4

Odsyłacze:

Oficjalny błąd śledzenia tego problemu to:

https://bugs.launchpad.net/bugs/1736116

Istnieją rozwiązania do instalacji VB 5.1.30 oraz 5.2.4. Niektórzy użytkownicy zgłaszają problemy z zależnością QT w wersji 5.2.4, więc wersja 5.1.30 może być bezpieczniejsza.

Wymieniono tam kilka opcji instalacji którejkolwiek wersji, a dyskusja trwa, więc nie zamierzam się tutaj odtwarzać.

Oliver Schonrock
źródło
virtualbox-5.1virtualbox-5.2
miałem
Również szczegółowe instrukcje na superuser.com/a/1305277/53547
mivk
3

Podczas uruchamiania komputera zmień jądro, w którym się uruchamiasz, przechodząc do „Zaawansowane opcje Ubuntu”.

Wybierz numer wersji, jak 4.10 - powinien zacząć działać, dopóki nie zostanie naprawiony.

therefriedbean
źródło
1
Tak właśnie zrobiłem. Uruchomiłem w poprzednim jądrze i czekam, aż Ubuntu zaktualizuje swoją wirtualną skrzynkę do pracy z najnowszym jądrem.
Max von Anon
1
to może działać, ale nowsze jądra (które nie współpracują z virtualboxem) wprowadzają poprawki dla meltdown / specter!
Jeno,
3

Tak więc w moim przypadku moduły jądra nie zostały poprawnie usunięte.

Oto szczegóły:

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

Problem:

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

NAPRAWIĆ:

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)

Po tym wszystko działa (przynajmniej w moim przypadku)

Mam nadzieję, że to pomoże.

Odpowiedzi zamieściłem na https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1736116

Andy
źródło
To pomogło mi również po pobraniu virtualbox 5.2.6 ze strony internetowej.
Gideon Maina