Dlaczego muszę ponownie ładować moduły jądra dla virtualbox po aktualizacji jądra?


10

Po ostatniej aktualizacji jądra w Ubuntu 12.10 musiałem ręcznie ponownie załadować dwa moduły jądra dla Virtualbox.

modprobe vboxdrv i modprobe vboxnetflt

Nie wiem wystarczająco dużo o systemie, aby stwierdzić, czy jest to błąd, czy tak powinno być, ale jest to raczej niewygodne. Jako nowy użytkownik Ubuntu, dość długo zajęło ustalenie, co trzeba zrobić.

To była automatyczna aktualizacja, która poprosiła mnie o ponowne uruchomienie po zakończeniu. Po ponownym uruchomieniu maszyny wirtualne nie będą działać, dopóki nie załaduję ponownie modułów.

Więc moje pytania brzmią: czy to normalne? Czy stanie się tak w przypadku innych pakietów, czy tylko Virtualbox? Czy program aktualizujący powinien to zrobić automatycznie? Czy powinienem zgłosić błąd, a jeśli tak, to komu?


Powinieneś zrestartować się po aktualizacji jądra, chyba że używasz jakiegoś narzędzia do poprawiania bieżącej wersji jądra. W przeciwnym razie będziesz używał starego jądra. Ponowne uruchomienie zajmie się ponownym załadowaniem modułu.
Javier Rivera

Odpowiedzi:


2

Moduły hosta VirtualBox są budowane z kodu źródłowego na twoim komputerze. Moduły dla jednego jądra niekoniecznie będą działać (lub działać poprawnie) na innym jądrze. Zazwyczaj są one ponownie kompilowane po aktualizacji jądra.

Po zainstalowaniu nowej wersji jądra stare jądro nadal działa. Jak mówi Javier Rivera , musisz ponownie uruchomić komputer, aby użyć nowego jądra.

Więc jeśli Twoim celem jest uruchomienie VirtualBox na nowym jądrze , musisz zrestartować komputer; moduły zostaną załadowane, gdy to zrobisz (w razie potrzeby po przebudowaniu ze źródła).

Jeśli jednak Twoim celem jest użycie starych modułów ze starym jądrem, możesz ręcznie przeładować je modprobe(tak jak robiłeś).

Jeśli uważasz, że to błąd, że moduły VirtualBox nie działają dla uruchomionego jądra przed ponownym uruchomieniem, możesz to zgłosić. Jeśli używasz wersji VirtualBox udostępnionej oficjalnie w Ubuntu (zamiast wersji ze źródła oprogramowania Oracle), zalecam zgłoszenie tego w dalszym ciągu VirtualBox (tj. Przeciwko VirtualBox Ubuntu). Najpierw przeczytaj uważnie ten przewodnik. W tym pytaniu znajdują się również pomocne informacje na temat zgłaszania błędów .

Jeśli możesz to wyprodukować za pomocą wcześniejszej wersji VirtualBox ( szczególnie jeśli dzieje się to w systemach innych niż Ubuntu, ale nie sądzę, że jest to tutaj istotne), zalecam zgłoszenie (lub również zgłoszenie) w górę (najpierw wyszukaj).

Zalecam niezwłoczne przyjęcie tej odpowiedzi; może ktoś lepiej wyjaśni, dlaczego moduły są rozładowane.


2

Jeśli musiałeś uruchomić „/etc/init.d/vboxdrv setup” po aktualizacji i przed załadowaniem nowych modułów jądra, upewnij się, że dkms jest poprawnie zainstalowany i zaktualizowany. Jest to komponent, który ponownie skompilował moduły po ponownym uruchomieniu po aktualizacji jądra, powinien również załadować moduły po zakończeniu. To jedyna okoliczność, w której mogłem doprowadzić do niepowodzenia testów. Jeśli tak nie jest, skorzystam z porady Eliasza i zgłoś błąd.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.