Mengapa saya perlu memuat ulang modul kernel untuk virtualbox setelah pembaruan kernel?

10

Setelah peningkatan kernel terakhir di Ubuntu 12.10 saya harus memuat ulang dua modul kernel secara manual untuk Virtualbox.

modprobe vboxdrv dan modprobe vboxnetflt

Saya tidak cukup tahu tentang sistem untuk mengatakan apakah ini bug, atau apakah itu seharusnya seperti itu, tetapi agak merepotkan. Sebagai pengguna baru Ubuntu, cukup memakan waktu untuk mencari tahu apa yang harus dilakukan.

Itu adalah pembaruan otomatis, yang meminta saya untuk reboot setelah selesai. Setelah boot ulang, mesin virtual tidak akan berjalan sampai saya memuat ulang modul.

Jadi pertanyaan saya adalah: apakah ini normal? Apakah ini akan terjadi dengan paket lain, atau hanya Virtualbox? Apakah pembaru seharusnya melakukan ini secara otomatis? Haruskah saya mengajukan laporan bug, dan jika demikian, kepada siapa?

Amon
sumber
Anda harus memulai ulang setelah peningkatan kernel kecuali Anda menggunakan beberapa alat untuk menambal-panas kernel yang sedang berjalan. Kalau tidak, Anda akan menggunakan kernel lama. Restart akan menangani pemuatan modul.
Javier Rivera

Jawaban:

2

Modul host VirtualBox dibangun dari kode sumber di mesin Anda. Modul untuk satu kernel belum tentu bekerja (atau berfungsi dengan baik) di kernel lain. Mereka biasanya dikompilasi ulang setelah kernel ditingkatkan.

Ketika Anda menginstal versi kernel baru, kernel lama Anda masih berjalan. Seperti yang dikatakan Javier Rivera , Anda harus reboot untuk menggunakan kernel baru.

Jadi, jika tujuan Anda adalah menjalankan VirtualBox di kernel baru , Anda perlu melakukan reboot; modul akan dimuat ketika Anda melakukannya (setelah dibangun kembali dari sumber jika perlu).

Namun, jika tujuan Anda adalah menggunakan modul-modul lama dengan kernel lama, Anda dapat memuatnya secara manual modprobe(seperti yang telah Anda lakukan).

Jika Anda yakin itu adalah bug yang modul VirtualBox tidak terus bekerja untuk kernel yang berjalan sebelum reboot, Anda dapat melaporkan bug itu. Jika Anda menggunakan versi VirtualBox yang disediakan secara resmi di Ubuntu (bukan versi dari sumber perangkat lunak Oracle), saya sarankan melaporkan ini ke hilir VirtualBox (yaitu, melawan VirtualBox Ubuntu). Baca panduan ini dengan seksama terlebih dahulu. Ada juga informasi bermanfaat tentang pelaporan bug dalam pertanyaan ini .

Jika Anda dapat memproduksinya dengan versi hulu VirtualBox ( terutama jika itu terjadi pada sistem non-Ubuntu, tapi saya rasa itu tidak penting di sini), saya sarankan melaporkannya (atau juga melaporkannya) hulu (cari dulu).

Saya sarankan untuk tidak langsung menerima jawaban ini; mungkin seseorang bisa lebih menjelaskan mengapa modul diturunkan.

Eliah Kagan
sumber
2

Jika Anda harus menjalankan '/etc/init.d/vboxdrv setup' setelah pembaruan dan sebelum memuat modul kernel baru, pastikan dkms diinstal dan diperbarui dengan benar. Ini adalah komponen yang mengkompilasi ulang modul ketika Anda reboot setelah memperbarui kernel, itu juga harus memuat modul ketika selesai. Itulah satu-satunya keadaan di mana saya bisa gagal dalam pengujian saya. Jika bukan itu masalahnya, saya akan mengikuti saran Eliah dan mengajukan laporan bug.

sean_m
sumber