Warum muss ich nach einem Kernel-Update Kernelmodule für virtualbox neu laden?


10

Nach dem letzten Kernel-Upgrade in Ubuntu 12.10 musste ich zwei Kernel-Module für Virtualbox manuell neu laden.

modprobe vboxdrv und modprobe vboxnetflt

Ich weiß nicht genug über das System, um zu sagen, ob dies ein Fehler ist oder ob es so sein soll, aber es ist ziemlich unpraktisch. Als Ubuntu-Neuling war es ziemlich zeitaufwändig, herauszufinden, was zu tun war.

Es war ein automatisches Update, das mich aufforderte, nach Abschluss einen Neustart durchzuführen. Nach dem Neustart wurden virtuelle Maschinen erst ausgeführt, nachdem ich die Module neu geladen hatte.

Meine Fragen sind also: Ist das normal? Wird es mit anderen Paketen oder nur mit Virtualbox passieren? Soll der Updater dies automatisch tun? Soll ich einen Fehlerbericht einreichen und wenn ja, an wen?


Sie sollten nach einem Kernel-Upgrade neu starten, es sei denn, Sie verwenden ein Tool, um den aktuell ausgeführten Kernel im laufenden Betrieb zu patchen. Andernfalls verwenden Sie den alten Kernel. Durch einen Neustart wird das Modul neu geladen.
Javier Rivera

Antworten:


2

Die VirtualBox-Hostmodule werden aus dem Quellcode Ihres Computers erstellt. Module für einen Kernel funktionieren nicht unbedingt (oder ordnungsgemäß) auf einem anderen Kernel. Sie werden normalerweise nach dem Upgrade des Kernels neu kompiliert.

Wenn Sie eine neue Kernelversion installieren, wird Ihr alter Kernel noch ausgeführt. Wie Javier Rivera sagt , müssen Sie neu starten, um den neuen Kernel zu verwenden.

Wenn Sie VirtualBox auf dem neuen Kernel ausführen möchten , müssen Sie einen Neustart durchführen. Die Module werden dann geladen (nachdem sie bei Bedarf von der Quelle neu erstellt wurden).

Wenn Sie jedoch die alten Module mit dem alten Kernel verwenden möchten, können Sie sie manuell neu laden modprobe(wie bisher).

Wenn Sie der Meinung sind, dass VirtualBox-Module vor dem Neustart nicht mehr für den laufenden Kernel funktionieren, können Sie dies als Fehler melden. Wenn Sie die Version von VirtualBox verwenden, die offiziell in Ubuntu bereitgestellt wird (anstelle der Version aus der Softwarequelle von Oracle), empfehle ich, dies gegenüber der nachgeschalteten VirtualBox (dh gegenüber der VirtualBox von Ubuntu) zu melden. Bitte lesen Sie diese Anleitung zuerst sorgfältig durch. In dieser Frage finden Sie auch hilfreiche Informationen zur Fehlerberichterstattung .

Wenn Sie dies mit der Upstream-Version von VirtualBox erstellen können ( insbesondere wenn dies auf Nicht-Ubuntu-Systemen geschieht, aber ich denke, dass dies hier nicht unbedingt erforderlich ist), empfehle ich, es im Upstream zu melden (oder auch zu melden) (zuerst suchen).

Ich empfehle, diese Antwort nicht sofort zu akzeptieren. Vielleicht kann jemand besser erklären, warum die Module entladen werden.


2

Wenn Sie nach dem Update und vor dem Laden der neuen Kernelmodule '/etc/init.d/vboxdrv setup' ausführen mussten, stellen Sie sicher, dass dkms ordnungsgemäß installiert und aktualisiert ist. Dies ist die Komponente, die die Module beim Neustart nach dem Aktualisieren des Kernels neu kompiliert hat. Sie sollte auch die Module laden, wenn sie fertig sind. Dies ist der einzige Umstand, unter dem ich es bei meinen Tests zum Scheitern bringen könnte. Wenn dies nicht der Fall ist, würde ich Eliahs Rat befolgen und einen Fehlerbericht einreichen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.