Debian stretch VirtualBox Guest Additions


#1

Bonjour,

Je viens chercher un peu d’aide car malgré mes recherches et tentatives je n’arrive pas à installer les “guest additions” de virtualbox sur un guest debian 9/stretch

j’installe ceci:

apt update
apt upgrade
apt install build-essential module-assistant dkms
m-a prepare
./VBoxLinuxAdditions.run

et j’obtiens ceci avec un joli message d’erreur.


Verifying archive integrity... All good.
Uncompressing VirtualBox 4.3.36 Guest Additions for Linux............
VirtualBox Guest Additions installer
Copying additional installer modules ...
Installing additional modules ...
Removing existing VirtualBox DKMS kernel modules ...done.
Removing existing VirtualBox non-DKMS kernel modules ...done.
Building the VirtualBox Guest Additions kernel modules
The headers for the current running kernel were not found. If the following
module compilation fails then this could be the reason.

Building the main Guest Additions module ...fail!
(Look at /var/log/vboxadd-install.log to find out what went wrong)
Doing non-kernel setup of the Guest Additions ...done.
Installing the Window System drivers
Warning: unknown version of the X Window System installed.  Not installing
X Window System drivers.
 ...done.
Installing graphics libraries and desktop services components ...done.

Warning: unknown version of the X Window System installed. Not installing

X Window System drivers.

si vous avez une idée, je suis preneur !!!
PS: j’avais aucun soucis sous Jessie car il y avait des paquets fournis qui faisaient très bien le travail et qu’on a plus sur stretch.

merci d’avance


#2

Je fais ça pour installer les additions.

sudo apt install module-assistant
sudo m-a prepare
sudo apt install linux-headers-amd64

#3

ça donne exactement le même message d’erreur :frowning:


#4

Tu as deja fait un dist-upgrade car j’ai l’impression que tu n’a pas le derniere noyau.


#5

Bonjour,

Malheureusement il ne semble plus exister pour Jessie non plus…

Y a rien de plus dans le fichier suivant : /var/log/vboxadd-install.log ?


#6

je viens de faire un apt-get dist-upgrade et ça me donne le meme resultat.

le noyau actuel est le : 4.9.0-5-amd64 x86_64

pour /var/log/vboxadd-install.log j’ai ceci:

...

...
/.tmp_memobj-r0drv-linux.o /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c: In function ‘rtR0MemObjNativeFree’:
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:581:21: error: implicit declaration of function ‘page_cache_release’ [-Werror=implicit-function-declaration]
                     page_cache_release(pMemLnx->apPages[iPage]);
                     ^~~~~~~~~~~~~~~~~~
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c: In function ‘rtR0MemObjNativeLockUser’:
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:1032:29: warning: passing argument 1 of ‘get_user_pages’ makes integer from pointer without a cast [-Wint-conversion]
         rc = get_user_pages(pTask,                  /* Task for fault accounting. */
                             ^~~~~
In file included from /tmp/vbox.0/r0drv/linux/the-linux-kernel.h:88:0,
                 from /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:31:
/usr/src/linux-headers-4.9.0-5-common/include/linux/mm.h:1303:6: note: expected ‘long unsigned int’ but argument is of type ‘struct task_struct *’
 long get_user_pages(unsigned long start, unsigned long nr_pages,
      ^~~~~~~~~~~~~~
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:1033:29: warning: passing argument 2 of ‘get_user_pages’ makes integer from pointer without a cast [-Wint-conversion]
                             pTask->mm,              /* Whose pages. */
                             ^~~~~
In file included from /tmp/vbox.0/r0drv/linux/the-linux-kernel.h:88:0,
                 from /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:31:
/usr/src/linux-headers-4.9.0-5-common/include/linux/mm.h:1303:6: note: expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’
 long get_user_pages(unsigned long start, unsigned long nr_pages,
      ^~~~~~~~~~~~~~
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:1035:29: warning: passing argument 4 of ‘get_user_pages’ makes pointer from integer without a cast [-Wint-conversion]
                             cPages,                 /* How many pages. */
                             ^~~~~~
In file included from /tmp/vbox.0/r0drv/linux/the-linux-kernel.h:88:0,
                 from /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:31:
/usr/src/linux-headers-4.9.0-5-common/include/linux/mm.h:1303:6: note: expected ‘struct page **’ but argument is of type ‘int’
 long get_user_pages(unsigned long start, unsigned long nr_pages,
      ^~~~~~~~~~~~~~
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:1036:29: warning: passing argument 5 of ‘get_user_pages’ makes pointer from integer without a cast [-Wint-conversion]
                             fWrite,                 /* Write to memory. */
                             ^~~~~~
In file included from /tmp/vbox.0/r0drv/linux/the-linux-kernel.h:88:0,
                 from /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:31:
/usr/src/linux-headers-4.9.0-5-common/include/linux/mm.h:1303:6: note: expected ‘struct vm_area_struct **’ but argument is of type ‘int’
 long get_user_pages(unsigned long start, unsigned long nr_pages,
      ^~~~~~~~~~~~~~
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:1032:14: error: too many arguments to function ‘get_user_pages’
         rc = get_user_pages(pTask,                  /* Task for fault accounting. */
              ^~~~~~~~~~~~~~
In file included from /tmp/vbox.0/r0drv/linux/the-linux-kernel.h:88:0,
                 from /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:31:
/usr/src/linux-headers-4.9.0-5-common/include/linux/mm.h:1303:6: note: declared here
 long get_user_pages(unsigned long start, unsigned long nr_pages,
      ^~~~~~~~~~~~~~
cc1: some warnings being treated as errors
/usr/src/linux-headers-4.9.0-5-common/scripts/Makefile.build:298 : la recette pour la cible « /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.o » a échouée
make[4]: *** [/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.o] Erreur 1
/usr/src/linux-headers-4.9.0-5-common/Makefile:1510 : la recette pour la cible « _module_/tmp/vbox.0 » a échouée
make[3]: *** [_module_/tmp/vbox.0] Erreur 2
Makefile:150 : la recette pour la cible « sub-make » a échouée
make[2]: *** [sub-make] Erreur 2
Makefile:8 : la recette pour la cible « all » a échouée
make[1]: *** [all] Erreur 2
/tmp/vbox.0/Makefile.include.footer:79 : la recette pour la cible « vboxguest » a échouée
make: *** [vboxguest] Erreur 2
Creating user for the Guest Additions.
Creating udev rule for the Guest Additions kernel module.

#7

Bonjour,

depuis que virtualbox-guest-x11 et virtualbox-guest-utils ont été retirés, il faut faire à l’ancienne :

Hôte :
Périphériques > Insérer l’image CD des Additions Invité…

Machine virtuelle

apt-get update
apt-get install build-essential dkms
cd /media/cdrom
bash VBoxLinuxAdditions.run

Cordialement


#8

merci copaya1 mais c’est ce que j’ai fais (cf 1er post)

je précise que c’est pareil sur un HOST Windows 7 avec Virtualbox 5.6.2
depuis la sortie de stretch j’ai toujours eu ce message d’erreur sur mes installations, différents hosts et version de virtualbox, différentes versions de stretch.
Jamais eu de soucis avec Jessie :confused:


#9

Comment as-tu installé virtualbox sur ta Debian ?
Je pense à une dépendances manquante au niveau de l’hôte en fait… La liste ici : https://packages.debian.org/stretch-backports/virtualbox (attention : backports seulement !)


#10

Re,

Ça fonctionne avec Virtualbox 5.2.6 et le guest cd qui va avec, j’avais oublié de télécharger l’iso 5.2.6

merci !!!