Comment monter un dossier partagé VirtualBox? [fermé]


58

Quelle est la procédure à suivre pour monter un dossier partagé VirtualBox sous Linux?

J'ai essayé des variantes de la commande de montage suivante mais je continue à avoir protocol errorou à d'autres erreurs de montage.

sudo mount -t vboxsf share /home/toto

Est-ce une question? S'il vous plaît, reformulez-le pour qu'il devienne une question, postez votre propre réponse, et je serai ravi de retirer le vote par opposition.
icedwater

1
Edité pour se conformer aux normes Q & R.

question de mise à jour de pls ce que vous avez essayé et quelle erreur vous obtenez

Edité pour montrer une commande qui ne marche pas. Une erreur commune est protocol errorcomme indiqué dans la question.

Je reçois cette erreur toute solution à ce "montage: type de système de fichiers inconnu 'vboxsf'"
sandip divekar

Réponses:


111

Ok, c'était un peu déroutant pour moi mais j'ai finalement compris ce qui se passait. J'ai donc décidé de donner mes 2 centimes dans l'espoir que ce sera plus clair pour les autres et si j'oublie un jour dans le futur:).

Je n'utilisais pas le nom du partage créé dans la machine virtuelle, mais un partage ou vb_share lorsque le nom de mon partage était wd , ce qui m'a confondu pendant une minute.

Commencez par ajouter votre répertoire de partage dans la VM Box: entrez la description de l'image ici

Quel que soit le nom que vous donnez à votre part, ce sera le nom que vous devrez utiliser lors du montage dans l'OS invité vm. c'est à dire que j'ai nommé le mien "wd" pour mon lecteur de passeport numérique occidental

Ensuite, sur le système d’exploitation de guset, créez un répertoire à utiliser pour votre montage, de préférence dans votre répertoire personnel.

mkdir share

Ensuite, ouvrez le terminal, copiez et collez le texte suivant ou tapez-le. Vous pouvez activer le Presse-papiers partagé sous Périphérique-> Presse- papiers partagé-> Bidirectionnel.

sudo mount -t vboxsf wd ~/share/

Vous devriez maintenant pouvoir copier des fichiers entre systèmes d’exploitation en utilisant le dossier "share" de votre répertoire personnel.

J'espère que cela t'aides!


1
J'ai passé quelques heures à comprendre comment obtenir des fichiers de l'invité. Il s'est avéré que "sharename" (tiré de la documentation officielle de la VBox) dans la commande "mount" - est un NOM juste spécifié dans la boîte virtuelle Shared Folders de la première colonne. Excellent travail, tu es mon héros.
Zen11625

2
excellente réponse, +1 pour la capture d'écran ... Cela monte le partage en tant que root, mais je crois. Voir [la documentation] ( forums.virtualbox.org/viewtopic.php?t=15868 ) pour savoir comment le monter en tant qu'utilisateur actuel, par exemple:sudo mount -t vboxsf -o rw,uid=1000,gid=1000 share ~/host
timbrown le

@user Comment rendre ce montage automatique au démarrage?

Si vous ne connaissez pas votre identifiant d'utilisateur, vous pouvez utiliser des variables. dans ce cas, la commande de monticule devientsudo mount -t vboxsf -o uid=$UID,gid=$(id -g) wd ~/share

28

Pour VirtualBox avec un invité Linux, voici les étapes à suivre pour monter un dossier partagé:

  1. Utilisez l'application de l'hôte VirtualBox, VirtualBox Manager, pour spécifier les dossiers de l'hôte à partager.

  2. Assurez-vous que les ajouts d'invité VirtualBox sont installés dans l'invité VirtualBox.

  3. Dans l'invité Linux, la commande mount devrait indiquer une ligne indiquant que le partage a été monté. Ceci est indiqué par type vboxsf. Le problème devient que le point de montage peut ne pas être à l'endroit souhaité et que les autorisations ne sont que root. L'emplacement de montage par défaut est dans /media/sf_.

  4. Vous pouvez accéder au partage en faisant de l'utilisateur, ou de l'identifiant de groupe de 1000, un membre du groupe vboxsf. Ceci est fait en changeant la vboxsfligne dans le /etc/groupfichier. Peut nécessiter un redémarrage.

  5. Vous pouvez modifier l'emplacement de montage du dossier à l'aide de la commande VBoxControl. La commande est installée en même temps que Guest Additions. Peut nécessiter un redémarrage. Par exemple, pour modifier le point de montage à partir /media/sf_...de, /home/toto/sf_...utilisez la commande suivante pour définir l'invité du dossier partagé de VirtualBox:

sudo VBoxControl ensemble propriété / VirtualBox / GuestAdd / SharedFolders / MountDir / home / toto /

Pour confirmer le changement, utilisez get:

sudo VBoxControl guestproperty get /VirtualBox/GuestAdd/SharedFolders/MountDir

Références:

Informations sur le dossier partagé de VirtualBox

Informations sur la propriété guest de VirtualBox


4
Nouveau problème, avec Vbox 4.3.10 le lien est cassé, cochez pour vérifier (ls -l) /sbin/mount.vboxsf Si cette cible n’existe pas, le répertoire doit être re-mappé: sudo ln -s /opt/VBoxGuestAdditions-4.3.10/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf
ppostma1 le

4
Pour ajouter l'utilisateur myuser au groupe vboxsf, vous pouvez utiliser: sudo adduser myuser vboxsf

VirtualBox 4.3.14 corrige des problèmes d'installation des additions invité pour RHEL 7 et CentOS 7. Installez les additions invité à l'aide de: if-not-true-then-false.com/2010/…

Je suis sur VirtualBox 4.3.20 sur Windows 8.1. J'ai Ubuntu installé dans la VM. Je ne peux pas voir type vboxsflors de l'exécution de la mountcommande, même si les éléments invités sont installés! s'il vous plaît aider
J86

20

En rencontrant:

mount: Protocol error

après avoir essayé de partager des dossiers dans VirtualBox, par exemple:

$ sudo mount -o uid=1000,gid=1000 -t vboxsf D_DRIVE ~/host

cela a finalement fonctionné pour moi:

$ sudo apt-get install virtualbox-guest-dkms

(Ma configuration: hôte Windows 7, invités: Ubuntu 12.04,13.10,14.04; exécutant actuellement la VBox 4.3.10 r93012)


5

Installez des ajouts de boîte virtuelle sur le système d'exploitation invité. Arrêtez ensuite le système d'exploitation invité. Ouvrez les paramètres guestos dans la boîte virtuelle. Ajoutez ensuite un dossier partagé et enregistrez les paramètres. Ensuite, démarrez l'invité os et pour Ubuntu, lancez la commande ci-dessous. Il ajoute l'utilisateur actuel au groupe vboxsf.

sudo adduser $ USER vboxsf

redémarrez le système d'exploitation invité et accédez à / media / pour accéder au dossier partagé.


sudo adduser ne fonctionne pas pour moi, j'ajoute l'utilisation de "sudo usermod -a -G vboxsf myUser" et cela fonctionne. Merci
Alex

1
Oui, c'est ce qui manquait: sudo adduser $ USER vboxsf Maintenant, cela fonctionne :-)

3

Dans un invité Linux ou Mac OS X VirtualBox, une fois que vous avez installé les ajouts d'invité VirtualBox, vous pouvez découvrir les dossiers partagés VirtualBox disponibles à l'aide de la commande suivante:

sudo  VBoxControl  sharedfolder  list

Si votre dossier personnel dans votre invité contient des dossiers portant le même nom que les dossiers partagés de VirtualBox, vous pouvez les monter automatiquement à l'aide du script shell suivant:

#!/bin/sh
#-----------------------------------------------------------------------------
# Discover VirtualBox shared folders and mount them if it makes sense
#-----------------------------------------------------------------------------

if  !  type  VBoxControl  > /dev/null;  then
  echo  'VirtualBox Guest Additions NOT found'  > /dev/stderr
  exit 1
fi

MY_UID="$(id -u)"
MY_GID="$(id -g)"

( set -x;  sudo  VBoxControl  sharedfolder  list; )  |  \
grep      '^ *[0-9][0-9]* *- *'                      |  \
sed  -e 's/^ *[0-9][0-9]* *- *//'                    |  \
while  read  SHARED_FOLDER
do
  MOUNT_POINT="$HOME/$SHARED_FOLDER"
  if  [ -d "$MOUNT_POINT" ];  then
    MOUNTED="$(mount  |  grep  "$MOUNT_POINT")"
    if  [ "$MOUNTED" ];  then
      echo  "Already mounted :  $MOUNTED"
    else
      (
        set -x
        sudo  mount  -t vboxsf  -o "nosuid,uid=$MY_UID,gid=$MY_GID"  "$SHARED_FOLDER"  "$MOUNT_POINT"
      )
    fi
  fi
done

1

Lorsque vous obtenez l'erreur suivante: /sbin/mount.vboxsf: le montage a échoué avec l'erreur suivante: Erreur de protocole

Malheureusement, cela signifie que vous utilisez le nom de partage par défaut ou que le nom du répertoire de partage de l'hôte est identique au nom de partage de l'invité monté. Dans ce cas, c'est "partager". Créez simplement un autre dossier de partage, par exemple "vb_share", puis exécutez simplement:

mount -t vboxsf vb_share / home / <utilisateur> / hôte


1
  • Installer les additions Vbox (fichier ISO ou télécharger ensuite)
  • Créez un répertoire avec le nom de votre choix dans le système ( mkdir sharepar exemple)
  • connectez-vous avec les "dossiers partagés VBox" le dossier partagé dans le système d'origine
  • utilisez la commande pour connecter votre dossier:
    sudo mount -t vboxsf name_of_folder_linked ~/name_of_folder_guest/

0

Configuration: VirtualBox 4.3.26, hôte Win 7 SP1, invité Debian Jessie 8.0 (stable).

Dans VirtualBox Manager, sélectionnez Paramètres des dossiers partagés ... dans le menu déroulant Périphériques .

Dans la fenêtre contextuelle résultante, sélectionnez Dossiers de la machine dans la liste des dossiers , puis cliquez sur le bouton "Ajouter une nouvelle définition de dossier partagé" (le dossier bleu avec une icône de signe "+" vert à droite de la liste des dossiers ).

Dans le formulaire contextuel Ajouter un partage résultant , cliquez sur le bouton représentant une flèche vers le bas dans le champ Chemin du dossier , puis sélectionnez Autre . Une fenêtre contextuelle Rechercher un dossier apparaît.

(Dans mon cas, je venais d'ajouter un autre disque dur sur mon poste de travail pour l'utiliser comme partage dédié, déjà formaté pour NTFS, avec le nom de volume "share" et monté en tant que "G:". Alors j'ai cliqué sur la flèche à côté de Ordinateur , sélectionnez le lecteur G: puis cliquez sur le bouton OK .)

(Dans votre cas, vous devez sélectionner le dossier ou le lecteur que vous souhaitez partager, puis cliquez sur le bouton OK .)

Lorsque vous avez fait votre choix et cliqué sur le bouton OK , VirtualBox Manager remplira les champs Chemin du dossier et Nom du dossier du formulaire Ajouter un partage . Laissez le champ Chemin du dossier seul, mais vous pouvez modifier le nom du dossier si vous le souhaitez. Veillez simplement à vous en rappeler plus tard.

Terminez le formulaire Ajouter un partage en cochant la case Rendre permanent , mais veillez à ne pas cocher la case Montage automatique . Nous procéderons au montage ultérieurement. (Et bien sûr, si vous voulez que le dossier ou le lecteur soit en lecture seule, cochez la case Lecture seule .) Cliquez ensuite sur le bouton OK .

Le partage nouvellement configuré doit maintenant apparaître sous la forme d'une entrée sous Dossiers de la machine dans la liste des dossiers . Cliquez sur le bouton OK .

Afin de monter ce partage au démarrage (démarrage), nous devons ajouter une ligne de définition de montage à / etc / fstab dans notre installation d’invité Debian Jessie. Cette modification doit être effectuée en tant que root ou via sudo, par exemple:

sudo nano /etc/fstab

(J'ai personnellement utilisé vi, mais parce que nano est l'éditeur par défaut de Debian, je l'ai spécifié dans l'exemple ci-dessus.)

Pour monter ce partage dans mon répertoire personnel, avec sa propriété et son groupe définis sur mon UID et mon GID personnels, j'ai ajouté la définition suivante à / etc / fstab:

share /home/conib/share vboxsf comment=systemd.automount,uid=conib,gid=conib,noauto 0 0

(Notez qu'il n'y a pas d'espaces autour des caractères "=", "." Ou ",".)

Une définition / etc / fstab se présente sous la forme

<Device> <Mount Point> <Type> <Options> <Dump> <Pass>

(Notez qu'il doit y avoir des espaces blancs - espace (s) et / ou tabulation (s) - entre les champs de la définition, mais pas d’espace blanc dans un champ.)

Le champ "Device" doit être défini sur le nom du dossier que nous avons spécifié via VirtualBox Manager Add Share . J'avais changé la valeur par défaut "G_DRIVE" en "partage".

Le "point de montage" est une spécification de chemin de répertoire qui doit déjà exister mais doit être vide. (C’est-à-dire que tout ce qui se trouve déjà dans ce répertoire sera masqué par ce que vous monterez dessus.) J’avais créé un nouveau sous-répertoire vide nommé "share" dans mon répertoire personnel.

Le "Type" est "vboxsf".

Les "Options" (comment = systemd.automount, uid = conib, gid = conib, noauto) ont été difficiles et ont pris un peu de difficulté à travailler pour cette configuration.

Définissez "Dump" sur 0 sauf si vous savez que vous souhaitez définir un autre paramètre.

Et comme nous ne voulons pas que fsck vérifie ce partage, définissez "Pass" sur 0 également.

Lorsque vous avez ajouté la ligne de définition à / etc / fstab, redémarrez votre invité Debian et confirmez que vous pouvez voir les fichiers et les sous-dossiers de votre partage.

HTH.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.