Nie można zainstalować VirtualBox z powodu brakującego modułu jądra

16

Próbuję zainstalować VirtualBox na moim Ubuntu.

Najpierw próbowałem sudo apt-get install virtualbox-osew terminalu, ale po kroku konfiguracji kończy się to błędem :

Nie znaleziono odpowiedniego modułu do uruchamiania jądra Podczas kontynuowania uruchamiania virtualboxpojawia się następujący błąd: OSTRZEŻENIE: Znak device / dev / vboxdrv nie istnieje. Zainstaluj pakiet virtualbox-ose-dkms i odpowiednie nagłówki, najprawdopodobniej linux-headers-generic.

Nie będzie można uruchomić maszyn wirtualnych, dopóki ten problem nie zostanie rozwiązany.

Wypróbowałem więc pakiet z http://www.virtualbox.org/ , ale uruchomienie VirtualBox kończy się niepowodzeniem:

OSTRZEŻENIE: Moduł jądra vboxdrv nie jest załadowany. Albo nie ma dostępnego modułu dla bieżącego jądra (2.6.38-8-generic-pae), albo nie można go załadować. Proszę ponownie skompilować moduł jądra i zainstalować go

  sudo /etc/init.d/vboxdrv setup

Nie będzie można uruchomić maszyn wirtualnych, dopóki ten problem nie zostanie rozwiązany.

Więc pobiegłem sudo /etc/init.d/vboxdrv setup, ale też zawodzi:

* Stopping VirtualBox kernel modules                                                           [ OK ] 
* Uninstalling old VirtualBox DKMS kernel modules                                                            [ OK ] 
* Trying to register the VirtualBox kernel modules using DKMS                                                       
Error! Your kernel headers for kernel 2.6.38-8-generic-pae cannot be found at
/lib/modules/2.6.38-8-generic-pae/build or /lib/modules/2.6.38-8-generic-pae/source.

* Failed, trying without DKMS
* Recompiling VirtualBox kernel modules                                                                             
* Look at /var/log/vbox-install.log to find out what went wrong

Zawartość/var/log/vbox-install.log .

Jak siedzę, ja też próbowałem zainstalować kernel-develz yum, nadal bezowocne:

root@ubuntu# yum install kernel-devel
Setting up Install Process
No package kernel-devel available.
Nothing to do

Teraz nie mam pojęcia, jak to naprawić. Jakieś pomysły?

SoftTimur
źródło
1
yum? używasz ubuntu? kto mówi, że potrzebujesz kernel-devel?
enzotib
Pffft, zainstaluj Virtualbox z repozytoriów.
nickguletskii
Nadal tkwię w Yum :(
binW
Czy możesz opublikować zawartość /var/log/kern.logna paste.ubuntu.com i zamieścić link tutaj?
Lekensteyn
1
@Lekensteyn tutaj jest /var/log/kern.log
SoftTimur

Odpowiedzi:

18

Robienie wszystkiego jako root za pomocą sui yummenedżera pakietów jest czymś, co pasuje do dystrybucji opartych na Redhat, ale nie Ubuntu. W Ubuntu uruchamiasz polecenie jako root, poprzedzając je poleceniem sudo. Menedżer pakietów używany przez Ubuntu jest apt.

Aby zainstalować VirtualBox, uruchom:

sudo apt-get install virtualbox-ose

To zajmie się zależnościami, takimi jak nagłówki jądra, które są zawarte w pakiecie linux-headers-generic. Jeśli masz jądro PAE, musisz najpierw zainstalować nagłówki (w twoim przypadku linux-headers-2.6.38-8-generic-pae), co można zrobić za pomocą:

sudo apt-get install linux-headers-$(uname -r)

uname -r podaje załadowaną wersję jądra i uratował cię przed ręcznym wprowadzaniem wersji jądra.

Lekensteyn
źródło
Dziękuję za odpowiedź. Właściwie to wypróbowałem to podejście, ale mam problem, czy mógłbyś rzucić okiem? askubuntu.com/questions/49052/…
SoftTimur
1
virtualbox-4.0nie ma w domyślnych repozytoriach. Czy masz zainstalowany PPA innej firmy? Usuń ten PPA lub pakiet i zainstaluj virtualbox-ose.
Lekensteyn,
@SoftTimur NIE powinieneś publikować duplikatów pytań, jeśli są one związane z tym samym problemem, mogą zostać oznaczone jako takie.
Thomas Ward
Chłopaki, dziękuję za odpowiedź, zredagowałem 2 pytania, które są ze sobą powiązane ... mam nadzieję, że będzie rozwiązanie ...
SoftTimur
1
@SoftTimur: nie zapomnij wyczyścić virtualbox przed ( sudo apt-get purge virtualbox-4.0 virtualbox-ose)
Lekensteyn
2

Miałem ten sam problem. Miałem linux-headers-<version>-generic-paezainstalowany, ale jak na ironię brakuje linux-headers-generic-pae. Jeśli zainstalujesz te, które mogą pomóc.

Powodzenia!

shaneonabike
źródło
1

Zainstaluj niezbędne narzędzia do kompilacji .

apt-get install build-essentials 

i zainstaluj nagłówki jądra Linux-a

apt-get install linux-kernel-headers 

lub

apt-get install linux-kernel-*

Zainstaluj dkms

apt-get install dkms
SH_Rohit
źródło
przepraszam za złe wcięcie .. apt-get install build-essential linux-kernel- * dkms
SH_Rohit
Nie ma takiego pakietu, jak build-essentialsto jest build-essential. linux-kernel-*pakiety nie istnieją, nazwa jest linux-headers-...-generictam, gdzie ...jest wersja jądra.
Lekensteyn,