web-dev-qa-db-ja.com

エラー:カーネルヘッダーが見つかりません。 (しかし、それらは所定の位置にあります)

VirtualBox 4.04にGuest Additionsをインストールしようとしています。ホストOSはUbuntuデスクトップ11.04 64ビット、ゲストOSはUbuntuサーバー11.10 64ビットです。

$ Sudo ./VBoxLinuxAdditions.run

出力後、次の行が印刷されます。

The headers for the current running kernel were not found.

ただし、少なくともdpkgに応じて、ヘッダーがインストールされます

$ dpkg --get-selections | grep linux-headers
linux-headers-3.0.0-12            install
linux-headers-3.0.0-12-server     install
linux-headers-server              install

実行中のカーネルは次のとおりです。

$ uname -a
Linux foobar 3.0.0-12-server #20-Ubuntu SMP Fri Oct 7 16:36:30 UTC 2011 x86_64 x86_64 X86_64 GNU/Linux

Guest Additionsインストーラーがカーネルヘッダーを見つけることができるように、どうすれば修正できますか?

更新:完全な出力が追加されました。

The headers for the current running kernel were not found. If the module compilation fails then this could be the reason.

Building the main Guest Additions module ...done.
Building the shared folder support module ...fail!
(Look at /var/log/vboxadd-install.log to find out what went wrong)
Installing the Window System drivers ...fails!
(Could not find the X.Org or XFree86 Window System).

失敗#2は気にしません。これはサーバーであり、Xサーバーは必要ないからです。しかし、共有フォルダーのサポートが必要です。

さらなる詳細:

$ tail /val/log/vboxadd-install.log
..........
cc1: some warnings being treated as errors
make[2]: *** [/tmp/vbox.0/vfsmod.o] Error 1
make[1]: *** [_module_/tmp/vbox.0] Error 2
make: *** [vboxsf] Error 2
76
Paolo

VirtualBox ubuntuサーバーゲストにゲスト追加インストールを正しく許可するには、最小限のxorgパッケージをインストールする必要があります。

Sudo apt-get install xserver-xorg xserver-xorg-core

これを行うことで、共有フォルダーをサポートできます。

お気づきのとおり、ゲストの追加は非常に大きなスクリプトの1つです-"VBoxLinuxAdditions.run"

このファイルの選択を解除できる場合があります。virtualboxの新しいバージョンがリリースされると、ゲスト追加のバージョンも通常バンプされるため、お勧めしません。

さらに、(まだお持ちでない場合)dkmsをインストールすることをお勧めします。新しいubuntuカーネルが更新されると、ゲスト追加カーネルモジュールが自動的にコンパイルされます。 dkmsがないと、カーネルの更新が行われたときに共有フォルダーのサポートが失われます。

ソース

8
fossfreedom

メッセージは誤解を招くものです。

私の場合、実際にはdkmが欠落しているため、追加実行をインストールする前に

Sudo apt-get install build-essential linux-headers-`uname -r` dkms
158
dog

(この質問には受け入れられた答えがありますが、他の誰かに役立つ場合に備えてこの答えを追加しています...)

同じ症状がありましたが、この質問に対するすべての提案を試みましたが、何も機能しませんでした。私はついに VirtualBoxバージョンであることを示唆するこのスレッド Linuxカーネルのバージョンが最新ではないことを発見しました。

したがって、何もうまくいかない場合は、最新バージョンを以下からインストールしてみてください: http://download.virtualbox.org/virtualbox/ (執筆時点では、これは 4.2.6 Debianベースのシステムの場合)。

19
Ash

このエラーを修正するには、dkmsをインストールし、VirtualBoxのバージョンをアップグレードしました。 ターンアウト VirtualBoxゲストの追加の古いバージョンは、最新のカーネルでは動作しないことがよくあります。

12
dwurf

ゲストの追加を使用するためにXが必要なことについての答えは、単なるあざけりです。 Xのインストール後に機能するのは、依存関係としてlibglibをプルするためですが、追加を実行するためだけにXサーバー全体をインストールすることは本当に不要です。

必要なパッケージはすべて次のとおりです。

  • ビルド必須
  • linux-headers-`uname-r`
  • libglib2.0-0

明らかに、必要なのはbuild-essentialとlibglibの一部だけですが、必要なパッケージを正確に調査するのではなく、依存関係を取得する方が簡単です。

補足説明として、これらはVMwareマシン上のVMware対応の「VMware Tools」に必要なパッケージとまったく同じものです。

10
yzfr1

次のコマンドで推奨パッケージをインストールした後:

Sudo apt-get install build-essential linux-headers-`uname -r` dkms

Dwurfの提案に従って、VirtualBoxのバージョンをアップグレードしました。それは私のためにそれを修正しました。

9
warren2k

このエラーは、Virtual Boxの古いバージョンまたはGuest Additions ISOイメージの少なくとも古いバージョンを使用していることが原因だと思います。

VBox Guest Additionsの新しいISOをダウンロードし、VBoxLinuxAdditions.runスクリプトを実行して成功しました。ここでVirtual Box download site に行き、新しいISOを取得しました。

理由により(入るのが面倒)、(Windows)ホスト上のVirtualBoxのバージョンを更新できませんでしたが、新しいISOファイルをファイルシステムのローカルの場所にコピーできました。

次に、VMウィンドウの[デバイス]メニューで、新しい仮想CD/DVDを選択し、新しいISOイメージをダウンロードした場所を選択しました。

その後、Debian VM内で\media\cdromにアクセスし、ルートとして新しいVBoxLinuxAdditions.runスクリプトを実行しました。 (すでにdkms、現在のカーネルヘッダーなどをインストールしていました)その後、スクリプトは、欠落しているヘッダー(それらが欠落していない)について誤って文句を言うのを止め、必要なカーネルオブジェクトを構築しました。

これを行う理由は、X.orgが追加のディスプレイ解像度を提供し、保守的に設定されたデフォルトよりも高い解像度でVMを実行できるようにするためです。

1
Geeb

通常、virtualbox(mount cdrom、sh ./VBoxLinuxGuestAddtions.run)を介してゲスト追加を直接インストールします。ただし、ほとんどのlinux-distributionsは、package-managerを介してインストールできるパッケージを提供します。次のコマンドは問題を解決しました:

Sudo apt-get install virtualbox-guest-dkms
1
rednammoc

私のために働いた唯一の解決策は、Virtual Boxを削除し、最新バージョンを VirtualBox Webサイト (バージョン:4.3.10(レポ)対4.3.22(ウェブサイト))からインストールすることでした。

1
Paul

私は上記のすべての解決策を試しましたが、適切なヘッダーをインストールしたことは確かですが、それでも運はありません!!!

root@test:~# dpkg --get-selections | grep linux-headers
linux-headers-4.0.0-kali1-AMD64         install
linux-headers-4.0.0-kali1-common        install
linux-headers-AMD64             install

また、今日の5.0.4の時点でVirtual Boxの最新バージョンもインストールしましたが、Guest Additionsをエラーでインストールしようとするとエラーが発生します

The headers for the current running kernel were not found.

解決策:

最後に私の問題を解決したのは、/ home /のような他のディレクトリの代わりに/ rootディレクトリからVBoxLinuxAdditions.runを実行することです!!!

私はもともとVBoxLinuxAdditions.runディレクトリから/home/を実行していましたが、このdamエラーが発生し続けますが、ルートディレクトリから以下のコマンドを使用した後、問題は解決しました!

cp /media/cd-rom/VBoxLinuxAdditions.run /root/
chmod 755 /root/VBoxLinuxAdditions.run
cd /root
./VBoxLinuxAdditions.run

この後、単純にrebootを使用できます。その後、Guest Additionalを適切に実行し、フルスクリーンも使用する必要があります。わーい !!!

1
Gob00st

K/Ubuntu 13.04ゲストのさまざまなフレーバーでVirtualBox Guest Additions v4.1.12をコンパイルしようとすると、OPと同じエラーが発生しました。

Building the shared folder support module ...fail!

これは、Linuxソース(GUEST内)のさまざまな部分に対するVirtualBox Guest Additionsのバグ(または満たされていない期待)によるものです。残念ながら、OracleはVirtualBoxホストバージョンをVirtualBoxゲスト追加バージョンに非常に密接にリンクすることを選択しているため、ゲスト追加にバグがある場合は、同時にホストをアップグレードする必要があります。

Ubuntu 12.04 LTSホストに次のバージョンのvirtualboxをインストールしました。

virtualbox       4.1.12-dfsg-2ubuntu0.3
virtualbox-dkms  4.1.12-dfsg-2ubuntu0.3
virtualbox-qt    4.1.12-dfsg-2ubuntu0.3

指示に従って: http://www.ubuntuupdates.org/ppa/virtualbox?dist=precise

次を使用して4.2.10-dfsg-0ubuntu2〜ubuntu12.04.1〜ppa1にアップグレードしました。

Sudo add-apt-repository ppa:debfx/virtualbox
Sudo apt-get update
Sudo apt-get install virtualbox virtualbox-dkms virtualbox-qt
cd ~/.VirtualBox
http://download.virtualbox.org/virtualbox/4.2.10/VBoxGuestAdditions_4.2.10.iso

これで、K/Ubuntu 13.04ゲストはVirtualBox Guest Additionsを構築してインストールできます。

Sudo apt-get update
Sudo apt-get upgrade
Sudo apt-get install make gcc build-essential linux-headers-`uname -r` dkms
cd /media/VBOXADDITIONS_4.2.10_81404
Sudo ./VBoxLinuxAdditions.run
Sudo shutdown -r 0
0
Phoeey

この問題が発生していたので、次のコマンドを実行して修正しました。

Sudo apt-get remove dkms build-essential linux-headers-*
Sudo apt-get install dkms build-essential linux-headers-$(uname -r)

詳細

0
Eduardo Dennis
  1. Sudo apt-get install --assume-yes build-essential dkms linux-headers-generic linux-headers-$(uname -r)
  2. Sudo ln -s /usr/src/linux-headers-$(uname -r)/include/generated/uapi/linux/version.h /usr/src/linux-headers-$(uname -r)/include/linux/version.h

  1. Sudo reboot

+ボーナス:共有フォルダー "secret";)


  1. Sudo gpasswd -a <username> vboxsf 
  2. Sudo reboot
  3. できた。

  4. ???
  5. 利益;)
0
user417498

私はあなたが何かを見逃していると思います。インストールしてみてください

  • linux-headers-3.14-kali1-common
  • linux-headers-3.14-kali1-AMD64
  • linux-source-3.14
  • libdw1
  • libunwind7

私にとっては3.14でのカリLinuxです

宜しくお願いします。

0
ch4t0