web-dev-qa-db-fra.com

Erreur: en-têtes de noyau non trouvés. (Mais ils sont en place)

J'essaye d'installer les additions d'invité dans VirtualBox 4.04. Le système d'exploitation hôte correspond au bureau Ubuntu 11.04 64 bits, le système d'exploitation invité correspond au serveur Ubuntu 11.10 64 bits.

$ Sudo ./VBoxLinuxAdditions.run

Après quelques sorties, cette ligne est imprimée:

The headers for the current running kernel were not found.

Mais les en-têtes sont installés, du moins en conséquence à 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

Le noyau en cours d'exécution est:

$ 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

Comment puis-je arranger les choses pour que le programme d'installation de Guest Additions puisse trouver les en-têtes du noyau?

Mise à jour: sortie complète ajoutée.

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).

Je ne me soucie pas de l'échec n ° 2, car c'est un serveur et je n'ai pas besoin du serveur X. Mais j'ai besoin du support des dossiers partagés.

Quelques détails supplémentaires:

$ 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
75
Paolo

Pour qu'un invité du serveur ubuntu de VirtualBox accepte correctement une installation avec ajout d'invité, vous devez disposer d'une installation minimale du paquet xorg:

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

En faisant cela, vous aurez le support des dossiers partagés.

Comme vous l'avez constaté, les ajouts d'invité sont un très grand script, "VBoxLinuxAdditions.run".

Vous pourrez peut-être décoiffer ce fichier - je ne le recommanderais pas, car à mesure que de nouvelles versions de virtualbox sont publiées, la version de guest-additions est généralement modifiée.

De plus, je recommanderais (si ce n’est déjà fait) d’installer dkmsname__. Lorsque les nouveaux noyaux ubuntu sont mis à jour, les modules du noyau guest-additions sont automatiquement compilés. Sans dkmsname__, vous perdrez la prise en charge des dossiers partagés lors de la mise à jour du noyau.

source

8
fossfreedom

Le message est trompeur.

Dans mon cas, il manquait réellement des dkms, donc avant d'installer l'addition

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

(Même si cette question a une réponse acceptée, j'ajoute cette réponse au cas où elle aiderait quelqu'un d'autre à sortir ...)

Bien que mes symptômes soient identiques, j’ai essayé toutes les suggestions relatives à cette question, mais rien n’a fonctionné. J'ai finalement trouvé ce fil suggérant qu'il s'agit de la version de VirtualBox n'étant pas à jour avec la version du noyau Linux.

Donc, si rien ne fonctionne pour vous, essayez d'installer la dernière version à partir de: http://download.virtualbox.org/virtualbox/ (au moment de la rédaction de cet article, c'était 4.2.6 pour les systèmes basés sur Debian).

19
Ash

J'ai corrigé cette erreur en installant dkms et en mettant à niveau ma version de VirtualBox. Il s'avère que les anciennes versions des ajouts invités à VirtualBox ne fonctionneront souvent pas avec les derniers noyaux.

12
dwurf

La réponse selon laquelle vous avez besoin que X utilise les ajouts d’invités est tout simplement ridicule. Cela fonctionne après l’installation de X parce qu’il libère libglib en tant que dépendance, mais il ne serait vraiment pas inutile d’installer tout le serveur X uniquement pour que les ajouts soient exécutés.

Tous les forfaits dont vous avez besoin sont les suivants:

  • essentiel de la construction
  • linux-headers-`uname-r`
  • libglib2.0-0

De toute évidence, il ne vous faut qu'une partie de build-essential et de libglib, mais au lieu de rechercher exactement quels paquets sont nécessaires, il est plus facile de les laisser tirer leurs dépendances.

Une remarque est que ce sont exactement les mêmes packages que vous avez besoin pour l'équivalent de vmware "VMware Tools" sur une machine vmware.

10
yzfr1

Après avoir installé les packages suggérés avec la commande suivante:

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

J'ai mis à jour ma version de VirtualBox comme suggéré par dwurf. Cela a réglé le problème pour moi.

9
warren2k

Je pense que cette erreur est due à l'utilisation d'une ancienne version de Virtual Box ou au moins d'une ancienne version de l'image ISO Guest Additions.

J'ai réussi à télécharger une nouvelle image ISO de la VBox Guest Additions et à exécuter le script VBoxLinuxAdditions.run. Je suis allé ici Virtual Box site de téléchargement et j'ai récupéré une nouvelle ISO.

Pour des raisons (trop ennuyeuses), je ne pouvais pas mettre à jour ma version de VirtualBox sur l'hôte (Windows), mais je pouvais copier le nouveau fichier ISO à un emplacement local du système de fichiers.

Ensuite, dans le menu "Périphériques" de la fenêtre VM, j'ai choisi un nouveau CD/DVD virtuel et choisi l'emplacement où j'ai téléchargé la nouvelle image ISO.

Puis, à l'intérieur de Debian VM, je suis allé à \media\cdrom et ai exécuté le nouveau script VBoxLinuxAdditions.run en tant que racine. (J'avais déjà installé dkms, en-têtes de noyau actuels, etc.). Le script a ensuite cessé de se plaindre par erreur des en-têtes manquants (ils ne l'étaient pas) et a créé les objets du noyau dont il avait besoin.

La raison en était que X.org me donnait des résolutions d'affichage supplémentaires et que je pouvais exécuter le VM à une résolution plus élevée que celle définie par défaut.

1
Geeb

Habituellement, j'installe les additions invité directement via virtualbox (mount cdrom, sh ./VBoxLinuxGuestAddtions.run). Cependant, la plupart des distributions linux vous proposent un paquet qui peut être installé via votre gestionnaire de paquets. Pour moi, la commande suivante a résolu le problème:

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

La seule solution qui a fonctionné pour moi a été de supprimer Virtual Box et d'installer la dernière version à partir du site Web de VirtualBox (version: 4.3.10 (repo) contre 4.3.22 (site Web)).

1
Paul

J'ai essayé TOUTES les solutions ci-dessus et je suis à peu près sûr d'avoir installé les en-têtes appropriés mais toujours pas de chance !!!

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

Et j’ai aussi installé la dernière version de Virtual Box à compter d’aujourd’hui 5.0.4, mais j’ai toujours l’erreur en essayant d’installer Guest Additions with error

The headers for the current running kernel were not found.

Solution:

En fin de compte, ce qui a résolu mon problème, c'est d'exécuter le VBoxLinuxAdditions.run à partir du répertoire/root au lieu d'un autre répertoire tel que/home/!!!

J'exécutais à l'origine VBoxLinuxAdditions.run à partir du répertoire /home/ et continue à avoir cette erreur dam, mais après avoir utilisé la commande ci-dessous à partir du répertoire racine, tout va bien, le problème est résolu!

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

Après cela, vous pouvez simplement utiliser reboot, vous devez alors faire en sorte que Guest Additional soit correctement configuré et sur FULL Screen aussi! YAY !!!

1
Gob00st

Je recevais les mêmes erreurs que OP lorsque j'essayais de compiler la v4.1.12 VirtualBox Guest Additions dans différentes versions d’invités K/Ubuntu 13.04.

Building the shared folder support module ...fail!

Cela est dû à des bogues (ou attentes non satisfaites) de VirtualBox Guest Additions par rapport à différentes parties de la source Linux (dans l'invité GUEST). Malheureusement, Oracle a choisi de lier très étroitement la version de l'hôte VirtualBox à la version des additions invité de VirtualBox. Par conséquent, s'il y a un bogue dans les additions invité, vous devez mettre à niveau l'hôte en même temps.

J'avais les versions de virtualbox suivantes installées sur l'hôte Ubuntu 12.04 LTS:

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

Selon les instructions sur: http://www.ubuntuupdates.org/ppa/virtualbox?dist=precise

Je suis passé à 4.2.10-dfsg-0ubuntu2 ~ ubuntu12.04.1 ~ ppa1 en utilisant:

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

Les invités K/Ubuntu 13.04 peuvent désormais créer et installer leurs suppléments invités VirtualBox:

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

J'ai rencontré ce problème et je l'ai corrigé en exécutant les commandes suivantes:

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

Plus d'infos

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

+ bonus: dossiers partagés "secret";)


  1. Sudo gpasswd -a <username> vboxsf 
  2. Sudo reboot
  3. terminé.

  4. ???
  5. profit;)
0
user417498

Je pense que vous manquez quelque chose. Essayez d'installer

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

Pour moi, c'est kali linux avec 3.14

Meilleures salutations.

0
ch4t0