J'utilise VirtualBox avec OS X comme hôte et CentOS sur la VM invitée.
Dans le dossier créé OS XI myfolder
, ajouté en tant que dossier partagé à la VM, allumé la VM, dans le dossier créé CentOS /home/user/myfolder
et en tapant:
sudo mount -t vboxsf myfolder /home/user/myfolder
et avoir la sortie:
/sbin/mount.vboxsf: mounting failed with the error: No such device
Qu'est-ce que je fais mal?
ACTUALISÉ:
Guest Additions
installée.
sudo mount -t vboxsf sf_folder /home/user/folder
, ici lesf_folder
etfolder
DOIT être des noms différentsshare
dans la réponse pour obtenir le permalien.Réponses:
Mon dossier / presse-papiers partagé a cessé de fonctionner pour une raison quelconque (probablement en raison d'une installation de correctif sur ma machine virtuelle).
sudo mount -t vboxsf Shared_Folder ~/SF/
A donné le résultat suivant:
VirtualBox: mount.vboxsf: mounting failed with the error: No such device
La solution pour moi était d'arrêter vboxadd et de faire une configuration après cela:
la source
/sbin/mount.vboxsf: mounting failed with the error: No such device
. Après avoir exécuté ce qui précède et redémarré le système, mes dossiers partagés sont apparus comme avant la mise à niveau .. merci!sudo ./vboxadd setup
, vous pouvez le fairesudo ./vboxadd stop
. Je ne sais pas si c'est encore nécessaire, mais je suppose que c'est ce que signifie cette phrase.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:En cas d'échec, vérifiez les journaux, par exemple
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).
sudo apt-get update && sudo apt-get install kernel-devel
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 exemplewget 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:
sudo modprobe vboxsf
Démarrez / redémarrez le service:
sudo /opt/VBoxGuestAdditions*/init/vboxadd setup
(ajoutersudo sh -x
au débogage)sudo /etc/init.d/vboxadd-service start
sudo /etc/init.d/vboxdrv setup
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: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:
Donc, fondamentalement, le
vboxadd
script s'attend à ce que vos sources du noyau soient disponibles dans le répertoire suivant: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écutermake kernelrelease
, obtenir la valeur et comparer avec votre version actuelle du noyau.Voici la logique:
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:
Si cela ne fonctionne pas, essayez les étapes manuelles suivantes pour CentOS:
la source
vagrant plugin install vagrant-vbguest
vagrant vbguest
fonctionne également sur centos 7 et a résolu le problème. MerciJe suis capable de résoudre ce problème en exécutant ci-dessous commmand
modprobe -a vboxguest vboxsf vboxvideo
la source
vboxsf
(VirtualBox Shared Folders) est ce qui est nécessaire ici. Vous pouvez lister ces 3 fichiers un par ligne dans un fichier/etc/modules-load.d/
(appelez-le peut-êtrevirtualbox.conf
) pour que ce changement persiste lors des redémarrages.En plus de la réponse @Mats , j'ajoute quelques informations supplémentaires (cela m'a aidé sur Debian 8).
Mon dossier / presse-papiers partagé a cessé de fonctionner pour une raison quelconque (probablement en raison d'une installation de correctif sur ma machine virtuelle).
M'a donné le résultat suivant:
La solution pour moi était d'arrêter vboxadd et de faire une configuration après cela:
À ce stade, si vous obtenez toujours l'erreur suivante:
Vous devez installer les en-têtes Linux:
alors vous pouvez installer les additions invité:
et redémarrez votre Linux en:
alors vous pourrez monter votre dossier partagé!
Plus d'informations (en français), consultez cette page .
la source
apt-get install linux-headers-virtual
aidé avec Lubuntu 15.04 sur VirtualBoxC'était la seule solution qui a fonctionné pour moi:
Installez le plugin Vagrant: vagrant-vbguest , qui peut garder vos suppléments invité VirtualBox à jour.
Source: https://github.com/aidanns/vagrant-reload/issues/4#issuecomment-230134083
la source
Cela a été résolu par:
la solution de contournement est ici: https://gist.github.com/larsar/1687725
la source
uname -r
dkmsshare
sous la réponse)Le dossier partagé fonctionnait auparavant pour moi mais tout d'un coup il a cessé de fonctionner (Virualbox - l'hôte était Windows 7, l'invité était OpenSuSe)
modprobe -a vboxguest vboxsf vboxvideo
puis
mount -t vboxsf testsf /opt/tsf
(testsf
était le dossier dans le lecteur Windows C qui a été ajouté dans le dossier partagé Virtualbox --- et/opt/tsf
est le dossier dans OpenSusela source
Mon hôte est Windows10, mon invité VM est ubuntu construit par vagrant. Cela a fonctionné pour moi:
la source
J'avais également un système en état de marche qui a soudainement cessé de fonctionner avec l'erreur décrite.
Après avoir fouillé dans mon / lib / modules, il semblerait que le
vboxvfs
module n'existe plus. Au lieu de cela,modprobe vboxsf
c'était l'incantation nécessaire pour redémarrer les choses.Je ne sais pas quand ce changement s'est produit, mais cela m'a surpris.
la source
J'utilise VirtualBox 5.1.20 et j'ai eu un problème similaire. Voici une URL vers laquelle j'ai trouvé le correctif et le correctif que j'ai implémenté:
Le lien avait quelque chose de similaire à /usr/lib/VBoxGuestAdditions/other/mount.vboxsf, plutôt que ce que j'ai dans l'extrait de script.
Pour un script de construction que j'utilise dans vagrant pour les ajouts:
https://github.com/rburkholder/vagrant/blob/master/scripts/additions.sh
Semble être un correctif sur https://www.virtualbox.org/ticket/16670
la source
La solution pour moi était de mettre à jour les ajouts d'invités
(cliquez sur Périphériques -> Insérer l'image du CD des ajouts invités)
la source
Il peut y avoir des erreurs / une approche incorrecte dans deux scénarios. Vérifiez les deux et découvrez-le
SCÉNARIO 1:
Une fois que vous exécutez VBoxLinuxAdditions.run ou VBoxSolarisAdditions.pkg ou VBoxWindowsAdditions.exe, vérifiez si tous les modules sont installés correctement.
1.1.a. Dans le cas de VBoxLinuxAdditions , si la
construction des modules du noyau VirtualBox Guest Additions échoue,
vérifiez le fichier journal dans /var/log/vboxadd-install.log . Si l' erreur est due à la version du noyau, mettez à jour votre noyau et redémarrez le vm. Dans le cas de fedora ,
1.1.b. yum mettre à jour le noyau * redémarrer
1.1.c.
1.2. Si rien n'échoue, tout va bien. Vous disposez déjà de la version attendue du noyau
SCÉNARIO 2:
Si VBoxGuestAdditions est installé (vérifiez qu'un dossier / opt / VBoxGuestAdditions- * est présent .... * représente la version), vous devez le démarrer avant le montage.
2.1. cd / opt / VBoxGuestAdditions - * / init && ./vboxadd start
Vous devez spécifier l'ID utilisateur et l'ID de groupe de votre utilisateur vm comme options de la commande mount.
2.2.a. Obtention de l'uid et du gid d'un utilisateur:
id -u <'user'>
id -g <'user'>
2.2.b. Définition de l'uid et du gid dans les options de la commande de montage:
mount -t vboxsf -o uid = x, gid = x nom_dossier_partagé dossier_invité
la source
Pour moi, sur un mac, il s'est avéré que j'avais une ancienne image VirtualBox stockée sur ma machine qui n'avait pas de métadonnées, donc elle n'était pas mise à jour vers la dernière version.
Cette ancienne image contenait une ancienne version du plugin vbguest, avec laquelle le nouveau plugin vbguest sur ma machine ne pouvait pas fonctionner.
Donc, pour résoudre ce problème, j'ai simplement supprimé l'image sur laquelle mon Vagrant était basé, puis Vagrant a téléchargé la version la plus récente et cela a bien fonctionné.
Vous pouvez savoir quelles boîtes vous avez mises en cache sur votre machine en exécutant:
J'avais également mis à jour mon plugin vbguest lors de mes précédentes tentatives pour que cela fonctionne, en utilisant le processus suivant, mais je ne pense pas que cela a aidé. FYI!
Si vous trouvez que la boîte de dialogue échoue sur les ajouts invités, vous pouvez essayer de faire ce qui suit pour vous assurer que les plugins sont correctement installés. Cela télécharge la dernière image basée sur votre système (pour moi CentOS) et peut résoudre le problème (c'est le cas pour moi!)
la source
Sur Ubuntu, cela a fonctionné:
la source
Eu le même problème avec VirtualBox 5.0.16 / rXXX
Installé le dernier VirtualBox 5.0.18 et installé le dernier Vagrant 1.9.3, le problème est allé toodles.
la source
J'ai ajouté en tant qu'utilisateur root
puis
et l'exemple de script
/root/mount-vboxsf.sh
(définissez vos propres options uid et gid)vous devez ajouter
la source
J'ai un problème similaire, vérifiez l'en-tête s'il ne correspond pas, puis exécutez la commande ci-dessous
CentOS: sudo yum update && sudo yum -y install kernel-headers kernel-devel
la source
Si vous êtes sur Debian:
1) supprimez tous les packages installés via le fichier ISO des ajouts d'invité de Virtualbox:
sh /media/cdrom/VBoxLinuxAdditions.run uninstall
2) installez les packages Virtualbox:
apt-get install build-essential module-assistant virtualbox-guest-dkms virtualbox-guest-utils
Notez que même en
modprobe vboxsf
ne renvoyant rien (donc le module est correctement chargé), levboxsf.so
appellera un exécutable nommémount.vboxsf
, qui est fourni parvirtualbox-guest-utils
. Ignorer celui-ci vous empêchera de comprendre la véritable cause de l'erreur.strace mount /your-directory
était d'une grande aide (aucun fichier ou répertoire sur/sbin/mount.vboxsf
).la source
Une mise à jour a fait l'affaire pour moi!
la source
Ci-dessous deux commandes fonctionnent pour moi.
la source
D'accord, tout le monde manque un fait fondamental.
mkdir /test
- Rend le sous-répertoire dans le répertoire courant.sudo mkdir /test
- Créez un répertoire dans Root.Donc, si votre nom de répertoire partagé est
shared
et que vous procédez comme suit:Il génère cette erreur:
Parce que le répertoire est au mauvais endroit! Oui, c'est ce que dit cette erreur. L'erreur ne dit pas de recharger les options d'invité VBOX.
Mais si vous faites ceci:
Ensuite, cela fonctionne très bien.
Je suis vraiment étonné de voir combien de personnes suggèrent de recharger les ajouts d'invités Vbox pour résoudre cette erreur ou d'écrire un programme complexe pour résoudre un répertoire créé au mauvais endroit.
la source
mkdir /test
créera le répertoire / test dans /.sudo mkdir /test
créera le même répertoire, mais appartenant à root plutôt qu'à l'utilisateur actuel.kernel-devel.x86_64 0:2.6.32-754.11.1.el6
et exécuté ces commandes -cd /opt/VBoxGuestAdditions-*/init
etsudo ./vboxadd setup
. Cela a fonctionné pour moi.