web-dev-qa-db-fra.com

Autorisations de dossier partagé Virtualbox

J'utilise Windows et Virtualbox avec RedHat, en termes simples: j'ai créé un dossier partagé pour pouvoir utiliser Eclipse sous Windows et effectuer des tests sous Linux.

Cependant, je ne peux pas accéder au dossier partagé avec mon utilisateur, je me suis connecté avec root et j'ai utilisé chmod 777 et j'ai même déplacé mon utilisateur vers le groupe du dossier.

Quoi que je fasse, le résultat est le même: 

/media/sf_sharedFolder/: Permission denied

Que puis-je faire? Comment puis-je accéder au dossier partagé avec mon utilisateur?

308
SaintLike

Ajoutez-vous au groupe vboxsf dans la machine virtuelle invitée.

Solution 1

Editez le fichier /etc/group. Recherchez la ligne vboxsf:x:999 et ajoutez à la fin :yourusername

Solution 2

Exécuter Sudo adduser $USER vboxsf

Quoi qu'il en soit, vous devez d'abord vous déconnecter, puis vous connecter après cela pour que la modification soit prise en compte.

617
Constantin

Essayez ceci (sur la machine invité . C’est-à-dire le système d’exploitation exécuté dans la boîte virtuelle):

Sudo adduser your-user vboxsf

Maintenant, redémarrez le système d'exploitation en cours d'exécution dans la boîte virtuelle.

170
aflorezd

Cela fonctionne aussi

Sudo usermod -aG <group> <user>

Puis redémarrez vm

37
GEverding

Pour les plus fainéants (pas de frappe, seulement du copier-coller totalement facile):

Sudo usermod -aG vboxsf $USER

Déconnectez-vous et reconnectez-vous pour activer le changement.

Je sais que c'est une solution "moi aussi", mais je suis vraiment paresseux et je n'ai trouvé aucune autre solution pour faire appel à mon apathie innée ... :)

17
ISparkes

Pour VirtualBox (5.0.24) Host = Mac (El Capitan) et Guest = RHEL (7.2)

Démarrez votre invité RHEL VM et ouvrez un terminal. Assurez-vous que les outils de développement sont installés.

Sudo yum groupinstall 'Developer Tools'

Et le paquetage des en-têtes du noyau pour que le script Guest Additions puisse mettre à jour votre noyau.

Sudo yum install kernel-devel*

Une fois que vous avez les conditions préalables en place, il est temps d'installer les additions invité. Avec votre ordinateur VM en cours d'exécution sélectionné, accédez au menu de VirtualBox et sélectionnez Périphériques -> Insérer une image du CD des ajouts d'invités ...

 enter image description here

Attendez quelques secondes pour que le montage se produise et que le script d'installation démarre. Une fois qu'ils ont cliqué sur le bouton "Exécuter" dans la boîte de dialogue qui est apparue dans votre machine virtuelle invité.

Une fois le script terminé, cliquez avec le bouton droit sur l'icône du CD sur le bureau et choisissez Éjecter. Arrêtez ensuite la machine virtuelle invité.

Créez le dossier partagé dans votre système hôte à l'aide de Terminal. Je le mets généralement dans mon dossier Documents et veillez à ce que votre utilisateur puisse y accéder.

Sudo mkdir ~/Documents/RhelShared
Sudo chmod 755 <user> ~/Documents/RhelShared

Dans le gestionnaire de boîte virtuelle VM Oracle, sélectionnez votre VM, puis cliquez sur l'élément de configuration "Dossiers partagés". Dans la boîte de dialogue suivante, cliquez sur l'icône Ajouter un dossier à droite de la liste des dossiers. 

Ensuite, dans la fenêtre contextuelle, sélectionnez le dossier de l'hôte que vous venez de créer comme chemin du dossier et attribuez-lui un nom de dossier qui sera utilisé par la machine virtuelle invitée. Cochez également la case "Montage automatique".

 enter image description here

Après avoir redémarré l'invité VM, lancez un terminal sur l'hôte et vérifiez que l'utilisateur associé au processus invité VirtualBox en cours d'exécution est bien votre utilisateur, très probablement, ou dans un groupe ayant accès au dossier partagé.

ps aux | grep VirtualBoxVM

Ensuite, conformément à plusieurs réponses précédentes dans un terminal sur l'invité VM, ajoutez votre utilisateur au groupe vboxsf.

Sudo usermod -a -G vboxsf <user>

Déconnectez-vous et connectez-vous à nouveau pour prendre en charge le changement.

Le dossier partagé devrait maintenant être disponible et accessible en tant que sf_rhelshared en supposant que vous utilisiez les mêmes noms que ceux que j'ai utilisés dans la fenêtre contextuelle ci-dessus. 

10
TJA

Pour clarifier le dernier post:

La commande VBoxManage est:

VBoxManage setextradata <VM_NAME> VBoxInternal2/SharedFoldersEnableSymlinksCreate/<SHARE_NAME> 1
1
Ian Owens

Après avoir ajouté l’utilisateur au groupe vboxsf, vous devrez peut-être vous déconnecter complètement de gnome/xfce/??? session, car il y a longtemps, quelqu'un a décidé que l'appartenance à un groupe devait être mise en cache lors de la première connexion au système de fenêtre.

Ou aller à la vieille école:

% newgrp vboxsf

dans n'importe quel shell que vous souhaitez utiliser pour accéder au dossier. Heureusement, newgrp recherche lui-même la liste des groupes et n’utilise pas les valeurs mises en cache. Vous aurez toujours besoin de vous déconnecter et de vous reconnecter pour accéder au dossier depuis autre chose qu'un shell.

0
Don Christensen

Le problème est que les autorisations du dossier partagé sont définies pour ne pas autoriser les liens symboliques par défaut. Vous pouvez les activer en quelques étapes faciles. 

  1. Arrêtez la machine virtuelle.
  2. Notez le nom de votre machine à Machine > Settings > General > Name
  3. Notez le nom de votre dossier partagé sous "Machine> Paramètres> Dossiers partagés".
  4. Recherchez le répertoire racine de votre VirtualBox et exécutez la commande suivante.
  5. Démarrez la machine virtuelle et le dossier partagé autorisera désormais les liens symboliques.
0
Andy Jenkins
Sudo adduser xxxxxxx vboxsf

où xxxxxx est votre nom de compte d'utilisateur. Déconnectez-vous et reconnectez-vous à Ubuntu.

0
Devesh Sharma