Contenu | Rechercher | Menus


Le répertoire de partage

Cette page n'est qu'une annexe destinée à alléger la page principale de VirtualBox et permettant de présenter la façon de mettre en œuvre la mise en commun d'un répertoire à la fois sur l'OS Host et également l'OS Guest (on peut le considérer comme une sorte de buffer d'interface).

……..

Pour faciliter le partage entre l'OS Host, et l'OS Guest, VirtualBox offre un système simple (cependant le partage Netbios via Samba marche également très bien).

Prérequis : Additions client installées (Guest addition), ainsi que l'option réseau dans VirtualBox (préférences/réseaux/activer adaptateur de réseaux)

(note : une fois le répertoire de partage correctement configuré, il est possible de lancer la VM SANS activer le contrôleur réseau. Le repertoire de partage reste actif. Cela permet donc d'isoler l'OS guest du réseau.

Installation des additions client (Guest addition)

  1. Lancez virtualbox
  2. Lancez l'host invité (Guest)
  3. Dans la fenêtre du Guest, vous avez une barre d'outils en haut avec 3 menus dont les noms sont :
    "Machine"
  * "Périphériques"
    "Aide"

ou bien si c'est en anglais :

    "Machine"
  * "Devices"
    "Help"

Ensuite en bas du menu Périphérique/Devices, vous cliquez sur "Installer les additions client ".

Il ne vous reste plus qu'à suivre la procédure d'installation (Suivant → suivant → Terminer).

Création d'un répertoire de partage

Il faut d'abord partager le dossier voulu en faisant clique droit –> options de partage

ensuite cocher la case "partager ce dossier" puis choisissez le nom du partage et cocher la case "permettre aux autres utilisateurs de modifier ce dossier"

Version simple

Dans les préférences de la VirtualBox (guest non booté), cliquez sur « Répertoires partagés », cliquez sur « Ajouter un nouveau répertoire partagé », donnez le chemin d'accès et donnez lui un nom. Retenez bien ce nom, il correspond à « sharename » dans les exemples qui suivent.

Cela peut paraître couler de source mais le nom ne doit pas comporter de caractères spéciaux (#,*…)

Version ligne de commande

Vous allez passer par la ligne de commande. Vous devrez d'abord éteindre votre OS Guest avant d'effectuer cette manip. Dans l'OS Host (votre ubuntu), vous devrez taper quelque chose du style :

vboxmanage sharedfolder add "xp" -name sharename -hostpath "/home"
  • "xp" est ici le nom de votre machine virtuelle (celle ci ne doit pas être lancée, et il est préférable d'éviter les tirets dans le nom de la machine virtuelle)
  • sharename est le nom de partage désiré (ne pas mettre de _ dans le nom)
  • "/home" est le chemin absolu que vous voulez partager. Attention, ce répertoire doit appartenir au groupe vboxusers (utiliser chgrp) sous peine de voir une erreur 67 dans windows.

Accès au partage

Pour accéder à ce partage dans un OS Guest:

  • De type Windows :
Version Simple

dans l'explorateur Windows, Outils > Connecter un lecteur réseau Choisissez la lettre que vous voulez pour désigner le fichier (ex Z:) Dossier \\vboxsvr\sharename

Version ligne de commande

dans une invite de commandes (command.com, ou Démarrer → Exécuter → « cmd »), puis on tape :

net use X: \\vboxsvr\sharename

(sharename= nom du dossier partagé crée précédement)

Cette commande ne fonctionne pas il se peut que se soit le DNS de VirtualBox qui ne fonctionne pas correctement; essayez alors de remplacer dans cette ligne: "vboxsvr" par votre adresse ip sous Ubuntu (disponible en tapant la commande "ifconfig" dans un terminal)

La commande va vous demander un login et un mot de passe. Il est différent de votre login et mot de passe; n'oubliez pas de le définir par sudo smbpasswd -a user_name cf. Samba

Et le lecteur apparait à la lettre X dans le poste de travail…

  • De type GNU/Linux, dans un vrai terminal ;-) :
mount -t vboxsf sharename mountpoint

Si vous rencontrez l'erreur "/sbin/mount.vboxsf: mounting failed with the error: Protocol error", remplacez mount -t vboxsf par mount.vboxsf

"mountpoint" est un répertoire de montage que vous devrez créer au préalable : exemple :

sudo mkdir -p /mnt/partage

La commande mount ne peut en général être exécutée qu'avec les droits administrateur (sudo) et du coup le répertoire monté appartient à root, ce qui limite sérieusement ce qu'on peut faire avec. Une solution consiste à forcer le user-id et le group-id de l'utilisateur sur le répertoire monté de la manière suivante :

sudo mount -t vboxsf -o uid=`id -u` -o gid=`id -g` sharename /mnt/partage

Pour automatiser le montage du partage au démarrage de l'OS GNU/Linux virtuel, modifiez le fichier /etc/fstab en rajoutant cette ligne à la fin : sharename mountpoint vboxsf defaults 0 0

Ne fonctionnera pas étant donné que le fstab est lu avant le chargement des modules additionnels de VirtualBox, comprenant le support des dossiers partagés. Le système ne pourra pas trouver le dossier partagé via son "sharename" si le module n'est pas chargé. Le seul moyen est d'ajouter une ligne du type "mount -t vboxsf sharename mountpoint" dans le fichier "/etc/init.d/rc.local". Je sais que c'est barbare et que certains trouve cela aberrant, mais il n'y a pas d'autre moyen, à moins de passer par un partage Samba.

Suppression du répertoire de partage

Pour enlever ce point de montage, dans votre OS Host (votre ubuntu), il vous faudra quitter votre session virtualbox, et taper :

VBoxManage sharedfolder remove "xp" -name "sharename"

Contributeurs: Fabien26,sbig77,vorach,omega13, DarkHylian, BravoJR, Maniack Crudelis, McPeter.


utilisateurs/brazz/virtualbox_repertoire_de_partage.txt · Dernière modification: Le 12/11/2009, 22:47 par brazz
Le contenu de ce wiki est sous licence : CC BY-SA v3.0