カーネルの更新後、virtualboxのカーネルモジュールを再ロードする必要があるのはなぜですか?


10

Ubuntu 12.10で最後にカーネルをアップグレードした後、Virtualboxの2つのカーネルモジュールを手動で再ロードする必要がありました。

modprobe vboxdrv そして modprobe vboxnetflt

これがバグであるのか、それともそのようなものであるはずなのかについて、システムについて十分に理解していませんが、かなり不便です。Ubuntuを初めて使用するユーザーは、何をしなければならないかを見つけるのにかなりの時間がかかりました。

これは自動更新で、完了時に再起動するように求められました。再起動後、モジュールを再ロードするまで仮想マシンは実行されません。

だから私の質問は:これは正常ですか?他のパッケージでも、Virtualboxでも発生しますか?アップデーターはこれを自動的に行うことになっていますか?バグレポートを提出する必要がありますか?その場合は誰に提出しますか?


現在実行中のカーネルにホットパッチを適用するためのツールを使用していない限り、カーネルのアップグレード後に再起動する必要があります。それ以外の場合は、古いカーネルを使用します。再起動すると、モジュールのリロードが処理されます。
ハビエルリベラ

回答:


2

VirtualBoxホストモジュールは、マシンのソースコードからビルドされます。あるカーネルのモジュールは、別のカーネルでは必ずしも機能しない(または適切に機能する)とは限りません。これらは通常、カーネルのアップグレード後に再コンパイルされます。

新しいカーネルバージョンをインストールしても、古いカーネルはまだ実行されています。ハビエル・リベラが言うには、新しいカーネルを使用するために再起動する必要があります。

したがって、新しいカーネルでVirtualBoxを実行することが目的の場合は、再起動する必要があります。モジュールはロード時にロードされます(必要に応じてソースから再構築された後)。

ただし、目的が古いカーネルで古いモジュールを使用することである場合は、手動で再ロードできmodprobeます(これまでと同じです)。

再起動する前に、VirtualBoxモジュールが実行中のカーネルで機能し続けないことがバグであると思われる場合は、それをバグ報告できます。Ubuntuで公式に提供されているバージョンの(Oracleのソフトウェアソースからのバージョンではなく)VirtualBoxを使用している場合は、ダウンストリームのVirtualBox(つまりUbuntuのVirtualBox)に対して報告することをお勧めします。まずこのガイドを注意深くお読みください。この質問には、バグ報告に関する役立つ情報もあります。

あなたは(VirtualBoxの上流のバージョンでこれを生成することができた場合は特にそれが非Ubuntuのシステムで発生した場合、私はそれがここに不可欠だとは思わない)、私はそれを報告(もしくはお勧めしますまた、それを報告する)上流(最初の検索)。

この回答はすぐに受け入れないことをお勧めします。おそらく誰かがモジュールがアンロードされる理由をよりよく説明できるでしょう。


2

更新後、新しいカーネルモジュールをロードする前に「/etc/init.d/vboxdrv setup」を実行する必要があった場合は、dkmsが正しくインストールおよび更新されていることを確認してください。これは、カーネルの更新後に再起動したときにモジュールを再コンパイルするコンポーネントであり、終了時にモジュールもロードする必要があります。それが私のテストで失敗する唯一の状況です。そうでない場合は、エリアアの助言を得てバグレポートを提出します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.