Vous utilisez des dossiers de partage, vous devez donc installer VirtualBox Guest Additions dans votre machine virtuelle pour prendre en charge cette fonctionnalité.
Vagabond
Si vous utilisez Vagrant (OS X :) brew cask install vagrant
, exécutez:
vagrant plugin install vagrant-vbguest
vagrant vbguest
En cas d'échec, vérifiez les journaux, par exemple
vagrant ssh -c "cat /var/log/vboxadd-install.log"
Il vous manque peut-être simplement les fichiers d'en-tête du noyau.
VM
À l'intérieur de VM, vous devez installer les suppléments invité, les en-têtes du noyau et démarrer le service et vérifier si l'extension du noyau est en cours d'exécution.
Cela dépend du système d'exploitation invité, voici donc de brèves étapes:
Le noyau d'installation inclut les en-têtes (requis par VBoxLinuxAdditions).
- RHEL:
sudo apt-get update && sudo apt-get install kernel-devel
- CentOS:
sudo yum update && sudo yum -y install kernel-headers kernel-devel
Installez les suppléments invité (cela dépend du système d'exploitation).
Ubuntu: sudo apt-get -y install dkms build-essential linux-headers-$(uname -r) virtualbox-guest-additions-iso
Si vous ne le trouvez pas, vérifiez par aptitude search virtualbox
.
Debian :sudo apt-get -y install build-essential module-assistant virtualbox-ose-guest-utils
Si vous ne le trouvez pas, vérifiez par dpkg -l | grep virtualbox
.
manuellement en téléchargeant le fichier iso dans VM (par exemple wget
) et en l'installant, par exemple
wget http://download.virtualbox.org/virtualbox/5.0.16/VBoxGuestAdditions_5.0.16.iso -P /tmp
sudo mount -o loop /tmp/VBoxGuestAdditions_5.0.16.iso /mnt
sudo sh -x /mnt/VBoxLinuxAdditions.run # --keep
Débogage supplémentaire: cd ~/install && sh -x ./install.sh /mnt/VBoxLinuxAdditions.run
Vérifiez à nouveau que les extensions du noyau sont opérationnelles:
Démarrez / redémarrez le service:
- manuellement:
sudo /opt/VBoxGuestAdditions*/init/vboxadd setup
(ajouter sudo sh -x
au débogage)
- Debian:
sudo /etc/init.d/vboxadd-service start
- Feutre:
sudo /etc/init.d/vboxdrv setup
- CentOS:
sudo service VBoxService start
Création du module principal des ajouts invités
Si ci-dessus ne fonctionne pas, voici des étapes plus sophistiquées pour y remédier. Cela suppose que vous avez déjà installé VBoxGuestAdditions (comme indiqué ci-dessus).
La raison la plus courante pour laquelle le montage du dossier partagé ne fonctionne pas peut être liée à la création du module Guest Additions qui a échoué. Si /var/log/vboxadd-install.log
vous avez l'erreur suivante:
Les en-têtes du noyau en cours d'exécution sont introuvables.
cela signifie soit que vous n'avez pas installé les sources du noyau, soit qu'elles sont introuvables.
Si vous les avez déjà installés comme indiqué ci-dessus, exécutez cette commande:
$ sudo sh -x /opt/VBoxGuestAdditions-5.0.16/init/vboxadd setup 2>&1 | grep KERN
+ KERN_VER=2.6.32-573.18.1.el6.x86_64
+ KERN_DIR=/lib/modules/2.6.32-573.18.1.el6.x86_64/build
Donc, fondamentalement, le vboxadd
script s'attend à ce que vos sources du noyau soient disponibles dans le répertoire suivant:
ls -la /lib/modules/$(uname -r)/build
Vérifiez si le répertoire noyau existe (le lien symbolique pointe vers le dossier existant). Si ce n'est pas le cas, veuillez les installer dans le bon dossier (par exemple dans /usr/src/kernels
).
Ainsi, le vboxadd
script peut entrer dans le répertoire source de votre noyau et s'exécuter make kernelrelease
, obtenir la valeur et comparer avec votre version actuelle du noyau.
Voici la logique:
KERN_VER=`uname -r`
KERN_DIR="/lib/modules/$KERN_VER/build"
if [ -d "$KERN_DIR" ]; then
KERN_REL=`make -sC $KERN_DIR --no-print-directory kernelrelease 2>/dev/null || true`
if [ -z "$KERN_REL" -o "x$KERN_REL" = "x$KERN_VER" ]; then
return 0
fi
fi
Si la version du noyau ne correspond pas aux sources, vous devez peut-être mettre à jour votre noyau Linux (au cas où les sources seraient plus récentes que votre noyau).
CentOS
Essayer:
vagrant plugin install vagrant-vbguest vagrant vbgues
Si cela ne fonctionne pas, essayez les étapes manuelles suivantes pour CentOS:
$ sudo yum update
$ sudo yum install kernel-$(uname -r) kernel-devel kernel-headers # or: reinstall
$ rpm -qf /lib/modules/$(uname -r)/build
kernel-2.6.32-573.18.1.el6.x86_64
$ ls -la /lib/modules/$(uname -r)/build
$ sudo reboot # and re-login
$ sudo ln -sv /usr/src/kernels/$(uname -r) /lib/modules/$(uname -r)/build
$ sudo /opt/VBoxGuestAdditions-*/init/vboxadd setup