Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/12/2009, à 18:04

cocoal

Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Bonjour,

Voilà le problème auquel je suis confronté: je souhaite pouvoir accéder à la même machine virtuelle  depuis deux sessions utilisateurs ubuntu différentes. Voici ce que j'ai fait jusqu'à présent:

- installation de Virtual box sur session 1, chemin pour 'hard disk" et "machines" sur répertoire commun sur home. Ce répertoire est partagé par les deux utilisateurs qui ont chacun tous les droits sur les fichiers qui s'y trouve.

- configuration du DD virtuel et de la VM sur session 1

-ouverture session 2, lancement de Virtual box et là, aucune trace de la VM créée sur la session 1 malgré le répertoire commun et les droits partagés.

L'intérêt serait de n'installer l'OS sur cette VM qu'une seule fois (ainsi que les logiciels qui vont avec) et de partager toutes les configurations faites sur une session avec l'autre. deux fois moins de travail et une gestion simplifié de la VM depuis l'une ou l'autre session sans distinction, les modifications se répercutant sur les deux sessions.

Malgré une recherche sur le forum et des thèmes de ce genre abordés, j'ai pas trouvé la solution.
Merci par avance de votre aide, je suis un peu largué là...

Dernière modification par cocoal (Le 26/12/2009, à 21:38)

Hors ligne

#2 Le 24/12/2009, à 04:52

AlexandreP

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Le problème est que VirtualBox crée des dossiers cachés .VirtualBox dans le dossier personnel d'un utilisateur pour y stocker les journaux d'erreurs et la base de données des machines virtuelles, des disques virtuels et des médias. Chaque utilisateur a sa propre base de données et ses propres journaux.

Même si les disques sont stockées dans un répertoire commun, VirtualBox ne gère pas la liste des machines de manière dynamique.

Deux possibilités :

- La plus sécuritaire, d'après moi, reste d'importer les disques durs virtuels dans chacune des bases de données des utilisateurs de VirtualBox, puis créer une nouvelle machine dans chacune des sessions. C'est jouable dans le cas où le nombre de machines virtuelles est faible et que des nouvelles machines ne sont pas créées fréquemment. Pour ce faire :
  1- Dans une première session, créer une nouvelle machine virtuelle. À l'étape de la sélection du disque dur virtuel pour la machine, créer un nouveau disque dur. Compléter la création de la machine ;
  2- Dans la seconde session, créer une nouvelle machine virtuelle avec les mêmes caractéristiques que la précédente. À l'étape de la sélection du disque dur virtuel pour la machine, choisir Utiliser un disque dur existant et appuyer sur le bouton en forme de dossier ;
  3- Dans l'onglet Disques durs, choisir Ajouter... puis sélectionner le disque dur virtuel de la machine virtuelle précédemment créée ;
  4- Choisir ce disque dur virtuel ;
  5- Compléter la création de la machine virtuelle, avec les mêmes caractéristiques que la précédente.
De cette manière, le contenu du disque dur virtuel est partagé entre deux machines virtuelles de deux sessions utilisateurs. En somme, c'est identique à transférer un disque dur d'un PC à un autre PC.

- L'autre solution consiste à déplacer l'un des répertoires .VirtualBox dans un emplacement accessible aux deux sessions, et remplacer le dossier .VirtualBox dans les dossiers personnels des utilisateurs par un lien symbolique vers le dossier .VirtualBox. Je ne suis pas sûr de la viabilité d'un tel projet.


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#3 Le 24/12/2009, à 13:49

cocoal

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Merci Alexandre de ta réponse qui m'éclaire carrément.
Je vais tenter la deuxième solutions pour commencer et je me rabattrait sur la première si je sens que çà foire.
Juste une question sur la première solution: cela veut dire que j'ai donc bien deux machines virtuelles sur le même disque, avec donc deux fois plus d'espace disque occupé et les manip d'installation de programme à faire indépendamment sur chaque machine ? Quel est alors l'intérêt de n'avoir qu'un disque virtuel plutôt que deux ?
je vous tient au courant de l'évolution de mes essais.

Hors ligne

#4 Le 25/12/2009, à 00:12

AlexandreP

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

cocoal a écrit :

Juste une question sur la première solution: cela veut dire que j'ai donc bien deux machines virtuelles sur le même disque, avec donc deux fois plus d'espace disque occupé et les manip d'installation de programme à faire indépendamment sur chaque machine ? Quel est alors l'intérêt de n'avoir qu'un disque virtuel plutôt que deux ?

Quand tu crées une "machine virtuelle de 30 Go", par exemple, c'est le disque dur virtuel qui pèse 30 Go. Si, pour deux machines virtuelles, tu utilises le même disque dur virtuel, alors le 30 Go ne sont occupés qu'une seule fois (puisque c'est le même disque dur qui est utilisé par les deux machines).

La machine virtuelle elle-même (ce n'est qu'un fichier texte contenant des spécifications d'un ordinateur virtuel, ainsi que des fichiers de journaux d'erreurs) a une taille négligeable.


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#5 Le 26/12/2009, à 21:34

cocoal

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

AlexandreP a écrit :

- L'autre solution consiste à déplacer l'un des répertoires .VirtualBox dans un emplacement accessible aux deux sessions, et remplacer le dossier .VirtualBox dans les dossiers personnels des utilisateurs par un lien symbolique vers le dossier .VirtualBox. Je ne suis pas sûr de la viabilité d'un tel projet.

Bon ben j'ai testé cette solution que tu sentais moins et çà marche nickel !!
Une seule machine virtuelle sur un seul DD et paramétrable et accessible depuis l'une ou l'autre session. juste ce que je voulais. Merci mille fois de m'avoir mis sur la piste !
Salut.

Hors ligne

#6 Le 26/12/2009, à 21:37

slasher-fun

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Bonjour,

Dans les règles du forum il y a écrit :

Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont. Cette manipulation s'effectue en modifiant le titre de votre premier message.

Merci smile

Hors ligne

#7 Le 26/12/2009, à 21:39

cocoal

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

C'est fait, je cherchais justement comment m'y prendre.

Hors ligne

#8 Le 07/01/2010, à 09:49

alan3188

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

bonjour, comment as tu fait exactement pour faire un lien dans tes dossiers utilisateurs pour dire qu'il fallait aller voir dans le dossier virtualbox commun que tu as déplacé ?? merci d'avance

Hors ligne

#9 Le 08/01/2010, à 06:35

AlexandreP

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Tu crées un lien symbolique, avec la commande ln.

Par exemple :
  - utilisateur1 est le premier utilisateur à tester VirtualBox. Ce compte est aussi un compte pouvant accomplir des tâches administratives ;
  - VirtualBox a été exécuté au moins une fois (c'est encore mieux si toutes les machines sont déjà créées) ;
  - utilisateur2 et utilisateur3 sont deux autres utilisateurs qui veulent utiliser les machines virtuelles ;
  - On souhaite déplacer les machines virtuelles dans un dossier /home/VirtualBox/.

Dans un terminal :

utilisateur1@ordinateur:~$ sudo mv /home/utilisateur1/.VirtualBox /home/VirtualBox
utilisateur1@ordinateur:~$ sudo chmod -R 777 /home/VirtualBox

utilisateur1@ordinateur:~$ sudo ln -s /home/VirtualBox /home/utilisateur1/.VirtualBox
utilisateur1@ordinateur:~$ sudo ln -s /home/VirtualBox /home/utilisateur2/.VirtualBox
utilisateur1@ordinateur:~$ sudo ln -s /home/VirtualBox /home/utilisateur3/.VirtualBox

Dernière modification par AlexandreP (Le 24/01/2010, à 21:13)


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#10 Le 08/01/2010, à 11:50

alan3188

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Ok merci pour tes explications !! Et est ce que tu sais comment le faire sur XP stp ??

Hors ligne

#11 Le 09/01/2010, à 07:25

AlexandreP

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Dans le dossier personnel de chaque utilisateur, tu devrais trouver un dossier .Virtualbox. Il suffit de supprimer ces dossiers .Virtualbox, puis de créer un raccourci vers le dossier Virtualbox où sont stockées tes machines virtuelles.

Je ne peux pas être plus explicite, mais c'est une opération très très basique.


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#12 Le 09/01/2010, à 10:51

alan3188

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

C'est ce que j'ai fait, et quand j'ouvre VirtualBox, il me recréé un Dossier .VirtualBox avec un fichier XML.

Hors ligne

#13 Le 10/01/2010, à 15:28

cocoal

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Bonjour,

Voilà comment j'ai procédé pour ma part:
- création d'un dossier .Virtualbox dans le dossier partagé par les deux utilisateurs
- création d'un lien (clic droit, créer un lien je ne me suis pas posé plus de question que çà, peut être que j'aurais dû ?)
-copier/coller ce lien dans chaque dossier utilisateur en le nommant .Virtualbox,, celui-ci remplaçant le .Virtualbox existant.

Salut,

Hors ligne

#14 Le 10/01/2010, à 16:18

alan3188

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

oui j'ai fait des raccourcis .VirtualBox dans chaque mais ca fonctionne pas!!

Hors ligne

#15 Le 24/01/2010, à 14:04

Pierre Maurette

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Bonjour,

Je travaille sur les mêmes machines virtuelles alternativement à partir de Windows 7 et Windows XP en dual boot. Partager les machines semble compliqué et risqué, surtout si on ne l'a pas envisagé au départ. J'utilise donc une solution qui ressemble à la première proposée par AlexandreP.
Les disques sont dans un répertoire visible des deux OS hôtes et paramétré comme répertoire disque dur par défaut. Les machines sont propres à chaque OS hôte.
J'ai un OS invité qui tourne dans un hôte. Ou je le crée : je crée un invité, je lui attache un disque, que je crée le plus souvent et j'installe l'OS invité sur ce disque.
Je reboote ensuite sur l'autre hôte. J'enregistre le ou les disques créés dans l'autre hôte (gestionnaire de supports virtuels). Je crée une nouvelle machine (nouvel invité) avec les mêmes paramètres que celle que j'ai créée dans l'autre hôte. Bien entendu, j'attache un disque dur existant, celui que je viens d'enregistrer. Il faut veiller à ce que les cartes réseau aient la même adresse MAC. Je le fais en bricolant les fichiers xml, c'est très simple, je crois que l'interface de VirtualBox permet de le faire dans les versions actuelles. Cette duplication de l'adresse MAC ne peut pas poser problème, puisque utilisant le même disque système, les deux invités ne peuvent tourner simultanément.

Voilà...

Hors ligne

#16 Le 24/01/2010, à 21:32

AlexandreP

Re : Virtual Box: partage VM entre deux sessions utilisateurs [résolu]

Personnellement, j'utilise la même solution que toi. Et c'est particulièrement nécessaire quand on partage des machines virtuelles entre plusieurs systèmes d'exploitation différent. Dans le cadre de mes cours à l'école, je dois fréquemment jongler entre divers OS (Windows XP, Windows Vista, Ubuntu, Fedora...) ; du coup, la virtualisation est un énorme plus. J'installe tous mes OS de tests dans des machines virtuelles. Mais mes OS hôtes sont différents :
  - à l'école, j'utilise Ubuntu comme système hôte ;
  - à la maison, j'utilise Windows 7 comme système hôte.
Il m'est impossible de partager les mêmes machines virtuelles entre les deux hôtes, car les chemins vers les disques durs sont inscrits différemment dans les fichiers de description d'une machine virtuelle.

Et c'est d'ailleurs pourquoi je l'ai proposée plus haut. En plus que ça a l'avantage de permettre à chacun de régler comme il veut sa machine virtuelle (ex : l'un peut vouloir activer plusieurs cartes réseau alors que pour l'autre, une seule suffit ; l'un peut vouloir accorder plus de RAM à une machine virtuelle ; l'autre peut vouloir attacher des disques durs virtuels supplémentaires ; etc.).

Et pour répondre à ta pas-question : effectivement, dans l'interface graphique de VirtualBox, il est possible de modifier manuellement l'adresse MAC d'une carte réseau de la machine virtuelle. Dans les préférences de la machine virtuelle, à la rubrique Réseau, il faut faire afficher les options avancées de la carte réseau à modifier. Il y a un champ pour l'adresse MAC.


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne