Montez VirtualBox SharedFolder dans la machine virtuelle Ubuntu au démarrage

15

J'ai une machine virtuelle Ubuntu exécutée dans VirtualBox.
J'ai un dossier partagé configuré car myshare j'ai un dossier créé dans mon répertoire personnel ( ~/jamesw) en tant que host. l'utilisation de la ligne sudo mount -t vboxsf myshare hostde mon répertoire personnel dans Terminal monte correctement le lecteur, mais si je redémarre, il n'est pas monté à nouveau.

Il s'agit d'une machine virtuelle que j'utilise pour exécuter un simple serveur Web et je voudrais que ce partage soit monté à chaque démarrage. Est-ce qu'il y a un moyen de faire ça? Surtout étant donné qu'il nécessite sudo?

James P. Wright
la source

Réponses:

22

Montage automatique des dossiers partagés à l'aide de Virtual Box Manager

Depuis Virtual Box> 4.0, nous pouvons monter automatiquement des dossiers partagés dans une machine virtuelle. Pour ce faire, pour Ubuntu, nous

  • besoin d'installer des compléments d'invité dans le système d'exploitation invité
  • assurez-vous que les utilisateurs sont dans le groupe vboxsf
  • définir des dossiers partagés depuis Virtual Box Manager

Cliquez avec le bouton droit sur votre machine virtuelle et choisissez Paramètres-> Dossiers partagés . Cela répertorie les partages existants ou vous permet de définir un nouveau dossier partagé en cliquant sur l'icône du dossier bleu avec le +signe vert en haut à droite:

entrez la description de l'image ici

Choisissez votre dossier dans le menu déroulant Chemin du dossier ou choisissez Définir un autre pour un sélecteur de fichiers qui répertorie le système de fichiers hôte. Choisissez un nom pour le partage (par exemple myshares ). En cochant Auto-mount, ce dossier sera toujours monté dans le répertoire invité Ubuntu /media/sf_myshares(le préfixesf_ sera automatiquement ajouté).


Alternativement, pour définir des dossiers partagés dans un OS invité en cours d'exécution, nous pouvons sélectionner Périphériques -> Dossiers partagés dans le menu de la fenêtre de Virtual Box Manager:

entrez la description de l'image ici

En cochant Rendre permanent, ces dossiers partagés seront également disponibles au prochain démarrage et seront montés lorsque le montage automatique est coché en plus.

Takkat
la source
Cela fera que le système d'exploitation invité montera automatiquement un partage hôte , et je pense que l'OP veut le contraire: monter un partage invité dans son système d' exploitation hôte . Si je me trompe, alors j'ai complètement mal compris la question, et ma réponse doit être ignorée
MestreLion
1
@MestreLion: Vous vous trompez, désolé! Je pense que mon problème est que je n'ai jamais pu trouver le lecteur partagé sur la machine virtuelle Ubuntu car je ne savais pas qu'il montait sur / media. Si j'avais réalisé que cette question n'aurait même pas été nécessaire.
James P. Wright
@James: Oh, je suis désolé alors. Le montage d'un partage d'hôte dans un système d'exploitation invité est facile et vous avez plusieurs options. Outre la réponse (excellente, btw) donnée ici, savez-vous qu'un OS invité peut être vu dans le LAN comme une machine ordinaire? Changez simplement le réseau par défaut NATen Bridged. Vous pouvez désormais "échanger" des partages d'invité à héberger (et vice-versa) en utilisant Nautilus, Samba, etc ...
MestreLion
@MestreLion: pour être honnête - je partage principalement mes fichiers hôte (et invité) en utilisant Samba sur le réseau;)
Takkat
@Takkat: Moi aussi! (et cela rend nos deux réponses obsolètes!: P)
MestreLion
7

Je ne pense pas que l'utilisation de / etc / fstab fonctionnera (cela n'a pas fonctionné pour moi) car ce fichier est traité avant le chargement du module SF et ne parviendra pas à monter le partage, voir HOWTO: Use Shared Folders 1 .

Kenneth Gulbrandsøy
la source
1
Voir forums.virtualbox.org/viewtopic.php?f=3&t=15868 pour savoir comment y remédier. Fondamentalement, ajoutez la commande mount dans /etc/rc.local ou équivalent.
Reinier Post
2

Ce n'est pas encore une réponse complète, mais plutôt des directives sur 2 approches que vous avez:

1 - Vous pouvez y éditer /etc/fstabet ajouter cette monture. Vous devrez traduire votre paramètre de montage en syntaxe fstab. Une supposition sauvage serait quelque chose comme ça /home/jamesw/host vboxsf myshare,umask=002,uid=<youruser>,gid=plugdev 0 0. Vous auriez besoin sudode modifier votre fstab, mais, une fois terminé, il sera monté automatiquement au démarrage. Comme cela est fait avant même de vous connecter, vous avez besoin d'un chemin absolu vers le point de montage (d'où / home / jamesw / host), vous ne pouvez pas utiliser $HOMEou ~. Astuce: le dossier "hôte" n'a pas besoin d'exister. S'il est dans fstab, mount le créera pour vous.

2 - Vous pouvez utiliser fusermountau lieu de monter. La syntaxe est similaire (mais pas identique, vous devez donc toujours traduire les paramètres de montage). Fusermount requiert que votre point de montage soit quelque part dans votre $ HOME, mais le plus grand avantage est que vous n'en auriez pas besoin sudo. Et le support sera disponible dans Nautilus (comme s'il s'agissait d'un CD ou d'une clé USB). Après avoir obtenu les bons paramètres et les avoir testés, vous pouvez les ajouter à votre ~/.profile, qui s'exécute chaque fois que vous vous connectez.

EDIT: Je suppose que Virtualbox n'a pas besoin que la machine fonctionne réellement pour partager des dossiers, OU qu'elle est opérationnelle avant de vous connecter

MestreLion
la source
L'utilisation de / etc / fstab ne fonctionne pas, voir la réponse de Kenneth Gulbrandsøy.
Reinier Post
0

Montage automatique des dossiers invités et partagés Ubuntu 16.04 accessible par l'utilisateur normal

Afin de monter automatiquement et d'accéder à ces dossiers en tant qu'utilisateur normal, des étapes spécifiques sont requises.

  1. N'utilisez pas d'ajouts officiels d'invités. Installez-le à la place virtualbox-guest-dkms.

    sudo apt-get install -y virtualbox-guest-dkms
    sudo usermod -aG vboxsf $(whoami)
    sudo VBoxControl guestproperty set /VirtualBox/GuestAdd/SharedFolders/MountDir ~/vbshare
  2. Ajoutez des dossiers partagés avec Auto-mountet Permanentcochez.

  3. Redémarrez vm.
  4. Vérifiez si vous avez monté des dossiers vb:

    mount | grep vboxsf

  5. Si c'est le cas, changez de propriétaire ~/vbsharepour vous-même.

    sudo chown $(whoami):$(whoami) ~/vbshare

Ajouter de nouveaux dossiers partagés sans redémarrer la machine virtuelle

  1. Ajouter un dossier partagé.
  2. Vérifiez si vous pouvez le trouver répertorié par cette commande:

    sudo VBoxControl sharedfolder list

  3. Si oui, créez un répertoire et montez

    mkdir ~/vbshare/newfolder
    sudo mount -t vboxsf newfolder ~/vbshare/newfolder
    
rofrol
la source