81 votes

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

Je tente d'installer Guest Additions dans VirtualBox 4.04. Le système hôte est Ubuntu desktop 11.04 64 bits, le système invité est Ubuntu server 11.10 64 bits.

$ sudo ./VBoxLinuxAdditions.run

Après une certaine sortie, cette ligne est imprimée :

Les en-têtes pour le noyau en cours d'exécution n'ont pas été trouvés.

Mais les en-têtes sont installés, du moins selon 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 corriger les choses pour que l'installateur de Guest Additions puisse trouver les en-têtes du noyau ?

Mise à jour : ajout de l'intégralité de la sortie.

Les en-têtes pour le noyau en cours d'exécution n'ont pas été trouvés. Si la compilation du module échoue, cela pourrait en être la raison.

Construction du module principal des Guest Additions ... fait.
Construction du module de support des dossiers partagés ... échec !
(Consultez /var/log/vboxadd-install.log pour savoir ce qui s'est mal passé)
Installation des pilotes du système de fenêtrage ... échoue !
(N'a pas pu trouver le système de fenêtrage X.Org ou XFree86).

Je me moque de l'échec n°2, car il s'agit d'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: certains avertissements sont traités comme des erreurs
make[2]: *** [/tmp/vbox.0/vfsmod.o] Erreur 1
make[1]: *** [_module_/tmp/vbox.0] Erreur 2
make: *** [vboxsf] Erreur 2

173voto

dog Points 1831

Le message est trompeur.

Dans mon cas, il manquait en réalité dkms donc avant d'installer l'ajout, exécutez la commande suivante

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

17voto

Ash Points 891

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

Malgré des symptômes identiques, j'ai essayé toutes les suggestions à cette question, mais rien ne fonctionnait. J'ai finalement trouvé ce fil de discussion suggérant que c'était la version de VirtualBox qui n'était pas à jour par rapport à la version du noyau Linux.

Donc, si rien ne fonctionne pour vous, essayez d'installer la dernière version depuis : http://download.virtualbox.org/virtualbox/ (au moment de l'écriture, il s'agissait de 4.2.6 pour les systèmes basés sur Debian).

13voto

dwurf Points 562

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

10voto

mdirolf Points 3804

La réponse selon laquelle vous avez besoin de X pour utiliser les additions invitées est simplement ridicule. La raison pour laquelle cela fonctionne après l'installation de X est qu'il tire libglib comme une dépendance, mais il serait vraiment inutile d'installer l'ensemble du serveur X juste pour faire fonctionner les ajouts.

Tous les paquets dont vous avez besoin sont les suivants :

  • build-essential
  • linux-headers-`uname-r`
  • libglib2.0-0

De toute évidence, vous n'avez besoin que d'une partie de build-essential et libglib, mais plutôt que d'investiguer exactement quels paquets sont nécessaires, il est plus facile de les laisser tirer leurs dépendances.

À noter que ce sont exactement les mêmes paquets dont vous avez besoin pour l'équivalent de vmware "VMware Tools" sur une machine vmware.

9voto

Ray Welch Points 11

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ésolu le problème pour moi.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X