J'ai un dossier partagé configuré entre virtualbox et mon ordinateur hôte Windows 7. J'ai un fichier test.txt que j'ai créé sous Windows et il apparaît correctement dans ma machine virtuelle Ubuntu. Virtualbox monte le dossier partagé dans /media/sf_share
(le nom que j'ai attribué au dossier partagé dans les paramètres de la virtualbox était share
). Je souhaite déplacer le point de montage de /media/sf_share
vers simplement /srv
afin de pouvoir modifier des fichiers sur mon hôte Windows et les afficher sous /srv
. Comment puis-je accomplir cela?
**
**
J'ai édité /etc/fstab
pour ressembler à ceci:
share /srv vboxsf defaults 0 0
Après cela, j’ai utilisé la commande mount -a
, puis j’ai redémarré et j’ai redémarré avec les paramètres du dossier partagé de la virtualbox à NE PAS monter automatiquement.
J'ai lu qu'il y avait un problème avec les systèmes de fichiers montés avant le chargement des utilitaires virtualbox. J'ai donc ajouté vboxsf
à mon /etc/modules
, puis j'ai répété les étapes ci-dessus.
Aucun d’entre eux ne reproduit le contenu correct dans/srv
. Lorsque j'émets mount -a
APRÈS avoir modifié la fstab
, je peux parfois le faire fonctionner. Je ne sais pas ce que je fais différemment à chaque fois, mais parfois après avoir édité fstab
, émettre mount -a
sans redémarrer, je peux voir les fichiers là-bas. Après un redémarrage, les fichiers sont à nouveau partis.
Vous devez modifier les "Propriétés de l'invité" pour modifier le préfixe de montage et le répertoire de base utilisés pour les dossiers partagés.
Voir https://www.virtualbox.org/manual/ch04.html#sf_mount_auto
and https://www.virtualbox.org/manual/ch04.html#guestadd-guestprops
Une note importante, cependant:
Les deux propriétés détaillées dans le premier lien ont des valeurs par défaut lorsqu'elles ne sont ni définies ni effacées:/VirtualBox/GuestAdd/SharedFolders/MountPrefix
est remplacé par défaut par sf_
s'il n'est pas défini.
Définit /VirtualBox/GuestAdd/SharedFolders/MountDir
par défaut à /media
s'il n'est pas défini
Par conséquent, vous devez définir MountPrefix
sur /
si vous ne souhaitez pas utiliser le préfixe sf_
, car essayer de le définir sur "" effacera en réalité la propriété et la remettra. à sa valeur par défaut.
Vérifiez /etc/fstab
? Je ne suis pas trop sûr du partage de virtualbox, donc si changer de point de montage casse le partage, vous pouvez le modifier et lier le montage /media/sf_share
à /srv
Informations sur le montage de la reliure et le fstab:
https://serverfault.com/questions/613179/how-do-i-do-mount-bind-in-etc-fstab
Si j'avais un volume monté dans/media/3tb-vol1/Private/et si je voulais le lier à/srv/Private, j'ai un fichier/etc/fstab comme celui-ci.
/media/3tb-vol1/Private/ /srv/Private none bind
Bien sûr, je ne connais pas les détails du partage de VirtualBox. Je ne sais pas comment et quand /media/sf_share
sera monté, s'il n'est pas prêt quand fstab
l'est, il se peut qu'il ne soit pas monté à temps pour être lié ...?
Sur la base de la réponse de Nawak, j'ai finalement réussi à le faire. J'avais déjà essayé beaucoup de solutions (basées sur /etc/fstab/
et fixant des /etc/rc.local
) mais celle-ci a fonctionné.
Je viens d'exécuter les commandes suivantes (à partir de la machine hôte):
VBoxManage guestproperty set "Ubuntu 16" /VirtualBox/GuestAdd/SharedFolders/MountPrefix /
VBoxManage guestproperty set "Ubuntu 16" /VirtualBox/GuestAdd/SharedFolders/MountDir srv
Où Ubuntu 16
est le nom de ma machine virtuelle. Afin de vérifier que ces propriétés ont été correctement appliquées, vous pouvez exécuter:
VBoxManage guestproperty enumerate "Ubuntu 16"