Modifications entre les versions 38 et 97 (s'étendant sur 59 versions)
Version 38 à la date du 2007-11-09 10:55:23
Taille: 6203
Commentaire:
Version 97 à la date du 2007-12-20 15:32:50
Taille: 5840
Commentaire:
Texte supprimé. Texte ajouté.
Ligne 2: Ligne 2:
== Configuration sur la machine de test ==
* Installer VirtualBox_1.5.2_OSE
== Idée principale ==
* Mettre l'image disque-winxp sur un serveur
Ligne 5: Ligne 5:
 .* Installer VirtualBox à partir de la source Virtualbox_1.5.2_OSE.tar.bz2
 .* Convertir l'archive en un paquet debian *.deb
'''dpkg-buildpackage -rfakeroot'''
 .* Installer le paquet
'''dpkg -i 'virtual_*.deb'''
* Mettre le snapshot sur le disque dur local pour le traitement des diffèrences
Ligne 11: Ligne 7:
* Mais pour le moment on va bosser avec le 1.5.0 livré avec l'auf-desktop * Ceux qui restent sur les dossiers personnels (serveur nfs) de l'utilisateur
  .* Les fichiers de configuration statiques en taille
   .a. VirtualBox.xml (1,3 Ko)
   .b. WinXP.xml (2,6 ko)
  .* Les fichiers de logs (126 ko)
   
== I. Configuration de la machine type/modele ==
Ligne 13: Ligne 15:
* Appliquer les droits nécessaires au fichier ou se trouve l'image seule pour un accès multiutilisateurs * Configurer virtualbox en mode graphique :), l'essentiel est d'avoir une "bonne" config de Windows XP
Ligne 15: Ligne 17:
 . au lieu de faire
 ''sudo chmod 777 /usr/share/Vbox'' autant donner les droits au groupe vboxusers....
* Installer le VBOXGuestAdditions_Tools_1.5.0_OSE.iso qui est un correctif, essentiel pour le partage de dossier, graphisme etc...que du bien
Ligne 18: Ligne 19:
* Ajouter les utilisateurs (pourquoi pas groupes!) dans vboxusers
  ''sudo usermod -G vboxusers -a $USERNAME ''
* Configuration de Windows avec un disque en mode normal. Droits: (rwx)
 .* Mappage de "mes documents" avec ''/$HOME/Documents'', et mettre le chemin unc: ''\\VBOXSVR\Documents''
 .* Création d'un lecteur logique pour simuler le lecteur usb dans le poste de travail du guest: '' net use z: \\VBOXSVR\FlashDisk ''
 .* Logiciels dépendant de la formation
Ligne 21: Ligne 24:
* Modifier les paramètres par défaut de VirtualBox, laisser les fichiers de conf dans leurs emplacements d'origines ie. dans chaque repertoire perso des utilisateurs
== II. Configuration sur les machines foad ==

* Créer une partition de 5Go pour mettre le snapshot, monter sur /mnt/VBOX/TMP
 Donner les droits aux dossiers /mnt/VBOX/TMP à tous les vboxusers.
  {{{
     sudo chown -R .vboxusers /mnt/VBOX/TMP
     sudo chmod 770 /mnt/VBOX/TMP }}}


* Essai de [https://help.ubuntu.com/community/ATAOverEthernet ATAoverEThernet] ... impossible en multiaccess de disque-winxp.vdi

* Mettre le disque-winxp.vdi sur le serveur NFS avec les droits 440, appartenant au groupe vbox. (/usr/local)

* Faire un script qui automatise le management et le démarrage de vbox,
Ligne 24: Ligne 41:
vboxmanage setproperty vdifolder /usr/share/VBox/VDI
vboxmanage setproperty machinefolder default
vboxmanage setproperty vrdpauthlibrary default
vboxmanage setproperty hwvirtexenabled no }}}
#!/bin/bash
# Script qui permet aux uilisateurs d'installer une image windows sous virtualbox
# VDI contient l'image du disque winxp mis sur le serveur nfs
# TMP contient l'image de diffèrence. Il est préfèrable de monter une partition sur TMP
Ligne 29: Ligne 46:
 * Rendre l'image immutable avant de l'attacher

{{{
vboxmanage registerimage disk iso.vdi -type immutable }}}

 * Créer la machine virtuelle
{{{
vboxmanage createvm -name WinXP -register}}}
'' on peut aussi ajouter l'option -settingsfile "/nfs/$USERNAME/.VirtualBox/Machines/WinXP/WinXP.xml" ''
 * Attacher le disque à la machine virtuelle, faire une translation d'adresse et mettre les snapshots dans un dossier temporaire:

{{{
vboxmanage modifyvm WinXP -hda iso.vdi -nic1 nat -snapshotfolder /tmp}}}

* Partage de fichiers entre la machine virtuel WinXP et le poste host Ubuntu.

 * Sur le poste hote Definir un dossier de partage

{{{
vboxmanage sharedfolder add WinXP -name Documents -hostpath "/nfs/home/$USERNAME/Documents" }}}

 . le dossier partagé doit se être sur dans les dossiers personnels de l'utilisateur de la machine hôte, donc sur le serveur nfs!
 * sur WinXP, click droite sur mes documents pour mapper "mes documents" avec ''/home/$USERNAME/Documents'', et mettre le chemin unc: ''\\Vboxsrv\Documents''
 * Si on veut un lecteur logique dans poste de travail on peut aussi faire un

/!\ Sous WinXP
{{{
net use z: \\Vboxsvr\Documents}}}
VDI=/usr/local/diskimage/aigeme
MAPAGE=/nfs$HOME/Documents
FLASH=/nfs$HOME/.FlashDisk
TMP=/srv/local/vbox
DISK=XP-AIGEME.vdi
Ligne 59: Ligne 53:
* Lancer WinXP sur Vbox en interface graphique: ''vboxmanage startvm WinXP -gui'' # Tips pour les usb, dans VBOX ose
 if [ ! -d $FLASH ] ; then
 mkdir $FLASH
 ln -s /media/disk/ $FLASH/
 fi
 
# Nettoyer le répertoire home/.Virtualbox/defaults
Ligne 61: Ligne 61:
== Configuration sur les machines foad ==
* Diffuser l'image iso.vdi directement sur /usr/share/VBox/VDI/ de chaque poste client
 .* archiver, copier, coller pas efficace
 .* Mettre sur un serveur nfs, trop gourmand en ressources...
 .* Peut être l'[http://www.nas-central.org/index.php?title=Vblade_-_ATA_over_Ethernet ATAoE Pojects ] avec un serveur Vblade ...
 
if [ -f $HOME/.VirtualBox//.nfs* ]; then
 sleep 3
 echo " Ressource occupée, redémarrer l'application"
 exit
else
 rm -rf $HOME/.VirtualBox/
Ligne 68: Ligne 68:
* Créer un autre compte ndimby2 pour pouvoir tester si vbox marche sur un autre utilisateur à part ndimby
 ~- Ca à l'air de fonctionner à part les écrans bleues! -~
  # Nettoyage des disques de diffèrences
  if [ ! -d $TMP ] ; then
  echo "Fichier temporaire innaccessible, contacter votre administrateur"
  exit 1
  elif [ -n "$TMP" -a -e $TMP/* ] ; then
  rm -rf $TMP/{*
  fi
Ligne 72: Ligne 77:
I. Refaire les mêmes étapes: création et configuration des fichiers pour être réutilisables   # repertoires des images sources des machines sur le serveur nfs
  vboxmanage setproperty vdifolder $VDI/
 
  # conf des machines restent dans le homedir
  vboxmanage setproperty machinefolder defaults
 
  # faire reconnaitre notre image modele
  if [ -e $VDI/$DISK ]; then
 
  vboxmanage registerimage disk $DISK -type immutable
  
   # creer la machine du nom de "WinXP"
  vboxmanage createvm -name "WinXP" -register

  # lui attacher l'image disque avec les options audio et nat
  vboxmanage modifyvm "WinXP" -hda $DISK -nic1 nat -snapshotfolder $TMP -audio alsa

  # supprimer les extradatas
  vboxmanage setextradata global "GUI/SuppressMessages" "remindAboutAutoCapture,remindAboutInputCapture,remindAboutMouseIntegrationOn"

  # Partage des dossiers entre XP et Ubuntu
  vboxmanage sharedfolder add "WinXP" -name Documents -hostpath $MAPAGE/
  vboxmanage sharedfolder add "WinXP" -name FlashDisk -hostpath $FLASH/

  else
  echo " Disque image innaccessible, contacter votre administrateur "
  exit 1
  fi

 # Interface simple
 vboxsdl -vm "WinXP"
 
fi
Ligne 75: Ligne 112:
  {{{
vboxmanage setproperty vdifolder /usr/share/Vbox/VDI
vboxmanage setproperty machinefolder default
vboxmanage setproperty vrdpauthlibrary default
vboxmanage setproperty hwvirtexenabled no
vboxmanage createvm -name WinXP -register
vboxmanage sharedfolder add WinXP -name Documents -hostpath "/nfs/home/$USERNAME/Documents"
vboxmanage registerimage disk /usr/share/Vbox/VDI/iso.vdi -type immutable
vboxmanage modifyvm WinXP -hda /usr/share/Vbox/VDI/iso.vdi -nic1 nat
Ligne 85: Ligne 113:
  ----
Ligne 86: Ligne 116:
II. Ou bien créer un script qui remplacera certaines instances des fichiers de conf à partir d'un fichier de conf type:
 1. Remplacer les instances @UTILISATEUR@ du fichier de conf type, et le mettre dans /nfs/home/@UTILISATEUR@/.VirtualBox/VirtualBox.xml
 2. Remplacer
==== Remarques ====
 . * '' Lorsqu'on modifie, supprime, ou on déplace des fichiers dans "Mes documents" sous WinXP, il faut rafraichir la fenêtre :( ''
 . * Pour modifier le type de l'image pour la maintenance, sachant qu'on a disque-winxp.vdi, avec un chmod rwx
 {{{
 vboxmanage modifyvm WinXP -hda none
 vboxmanage unregisterimage disk disque-winxp.vdi
 vboxmanage registerimage disk disque-winxp.vdi -type normal
 vboxmanage modifyvm WinXP -hda disque-winxp.vdi
 vboxmanage startvm WinXP -gui }}}
 . et c'est reparti en n'oubliant pas de remettre le mod en read-only
Ligne 90: Ligne 127:
 . * Pour les fichiers de configurations, on a 3 types de uuid:
  . 1. Celui qui spécifie le nom de la machine virtuelle: WinXp
  . 2. L'uuid qui spécifie le "disque dur", qu'il soit immutable ou non
  . 3. Et enfin un dernier qui est spécifié quand le type est immutable
Ligne 91: Ligne 132:
 {{{
Ligne 92: Ligne 134:
''Remarque''
'' Lorsqu'on modifie un supprime, ou on déplace des fichiers dans "Mes documents" sous WinXP, il faut rafraichir le fenêtre :( ''
    <MachineRegistry>
      <MachineEntry src="Machines/WinXP/WinXP.xml" uuid="{f4270d7d-2c5f-4776-46af-e43f34e655dd}"/>
    </MachineRegistry>
     .....
        <HardDisk type="immutable" uuid="{85330e70-3e98-488c-0586-f01e5685fec3}">
          <VirtualDiskImage filePath="/mnt/e1.1/disque-winxp.vdi"/>
          <DiffHardDisk uuid="{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}">
            <VirtualDiskImage filePath="/mnt/VBOX/{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}.vdi"/>
          </DiffHardDisk>
        </HardDisk>
      </HardDisks> }}}
 
==== A tester ====
Ligne 95: Ligne 148:
 * Test VMDK
  1. Lancer VMDK depuis Gestionnaire de disk VBox
    Sinon Convertir une image VMDK de vmware en VDI
Ligne 96: Ligne 152:
 . ''note''
 Pour modifier le type de l'image, sachant qu'on a iso.vdi:
{{{
 vboxmanage modifyvm WinXP -hda none
 vboxmanage unregisterimage disk iso.vdi
 vboxmanage registerimage disk iso.vdi -type normal
 vboxmanage modifyvm WinXP -hda iso.vdi
 vboxmanage startvm WinXP -gui }}}
et c'est reparti
  2. Tester le mode immutable VMDK sur VirtualBox
    Si test ok mettre sur le serveur NFS
       sinon créer une nouvelle image vdi avec les logs de [http://wiki.auf.org/wikiteki/FOAD/AIGEME AIGEME]
        
Ligne 106: Ligne 157:
 * Test X-access
  Tester l'acces de l'image depuis plusieurs machines du CDR
     Si test ok passer a test foad
       sinon verifier les permissions, type etc..
Ligne 107: Ligne 162:
----
==== Erreur rencontré ====

* --( ''si on crée un autre fichier de configuration sur une machine cliente et qu'on y attache juste le disk image de la machine de test, en demarant la machine guest on a "Err. lecture disque Entrer Ctrl+Alt+Suppr pour redémarrer." '')--
-->Solution: Bien configurée le fichier de config, détacher et déenregistrer le disque avant de supprimer l'ancien fichier de config

* '' quand on se log la premiere fois sur un compte utilisateur simple ou même avec pouvoir sur winXP, le partage est inacessible. On se logue en tant qu'admin, le partage fonctionne. On se relog en tant user sans pouvoir, le partage fonctionne. ''
--> Solution temporaire: laisser le compte administrateur en autologon. Par très secure pour les installations à gogo!!!

* '' --( Le client winxp ne peut ni supprimer ni deplacer ces fichiers dans l'explorateur windows de "Mes documents", par contre sur le client hote Ubuntu c'est niquel. Meme avec du chmod 777 ça passe pas ??? )--''

* ça apparait quand on s'y attends pas! des fois des qu'on se log sur winxp, dès fois lorsque on fais des copies !
/!\
''BLUE SCREEN OF DEATH: Le problème peut être du à ce fichier: VBOXSF.sys
 STOP: 0x00000050 ............
 Vboxsf.sys - adresse FAEC3439 base at FAEC3439, Date Stamp 46d80f5a
 ... Vidage de la mémoire physique....''
--> Solution: ...vbox 1.5.2??
 * Test foad
   Implementer le test sur quelques utilisateurs dans la salle foad
   
Ligne 126: Ligne 166:
* --( Lorsqu'on attache le disk iso.vdi depuis ndimby2, y a une méchante erreur )--
/!\
''Assertion failed: [mId && children().size() == 0] at '/build/buildd/virtualbox-ose-1.5.0-dfsg2/src/VBox/Main/HardDiskImpl.cpp' (536) in virtual nsresult HardDisk::trySetRegistered(PRBool).
Please contact the product vendor!''
--> Solution: Donner les permissions 777 à iso.vdi, mais qui engendre un autre problème: si l'utilisateur peut rendre la machine normal alors c'est foutue!!!! grrr
 

TAF pour pouvoir virtualiser correctement

Idée principale

* Mettre l'image disque-winxp sur un serveur

* Mettre le snapshot sur le disque dur local pour le traitement des diffèrences

* Ceux qui restent sur les dossiers personnels (serveur nfs) de l'utilisateur

  • * Les fichiers de configuration statiques en taille
  • * Les fichiers de logs (126 ko)

I. Configuration de la machine type/modele

* Configurer virtualbox en mode graphique :), l'essentiel est d'avoir une "bonne" config de Windows XP

* Installer le VBOXGuestAdditions_Tools_1.5.0_OSE.iso qui est un correctif, essentiel pour le partage de dossier, graphisme etc...que du bien

* Configuration de Windows avec un disque en mode normal. Droits: (rwx)

  • * Mappage de "mes documents" avec /$HOME/Documents, et mettre le chemin unc: \\VBOXSVR\Documents

  • * Création d'un lecteur logique pour simuler le lecteur usb dans le poste de travail du guest: net use z: \\VBOXSVR\FlashDisk

  • * Logiciels dépendant de la formation

II. Configuration sur les machines foad

* Créer une partition de 5Go pour mettre le snapshot, monter sur /mnt/VBOX/TMP

  • Donner les droits aux dossiers /mnt/VBOX/TMP à tous les vboxusers.
    •      sudo chown -R .vboxusers /mnt/VBOX/TMP 
           sudo chmod 770 /mnt/VBOX/TMP 

* Essai de [https://help.ubuntu.com/community/ATAOverEthernet ATAoverEThernet] ... impossible en multiaccess de disque-winxp.vdi

* Mettre le disque-winxp.vdi sur le serveur NFS avec les droits 440, appartenant au groupe vbox. (/usr/local)

* Faire un script qui automatise le management et le démarrage de vbox,

# Script qui permet aux uilisateurs d'installer une image windows sous virtualbox
# VDI contient l'image du disque winxp mis sur le serveur nfs
# TMP contient l'image de diffèrence. Il est préfèrable de monter une partition sur TMP

VDI=/usr/local/diskimage/aigeme
MAPAGE=/nfs$HOME/Documents
FLASH=/nfs$HOME/.FlashDisk
TMP=/srv/local/vbox
DISK=XP-AIGEME.vdi


# Tips pour les usb, dans VBOX ose
 if [ ! -d $FLASH ] ; then
        mkdir $FLASH
        ln -s /media/disk/ $FLASH/
 fi
        
# Nettoyer le répertoire home/.Virtualbox/defaults

if [ -f $HOME/.VirtualBox//.nfs* ]; then
        sleep 3
        echo " Ressource occupée, redémarrer l'application"
        exit
else
        rm -rf $HOME/.VirtualBox/

         # Nettoyage des disques de diffèrences
        if [ ! -d $TMP ] ; then
                echo "Fichier temporaire innaccessible, contacter votre administrateur"
                exit 1
         elif [ -n "$TMP" -a -e $TMP/* ] ; then                 
                rm -rf $TMP/{*
         fi


         # repertoires des images sources des machines sur le serveur nfs
         vboxmanage setproperty vdifolder $VDI/
        
         # conf des machines restent dans le homedir
         vboxmanage setproperty machinefolder defaults
        
         # faire reconnaitre notre image modele
         if [ -e $VDI/$DISK ]; then
        
                vboxmanage registerimage disk $DISK -type immutable
                
                # creer la machine du nom de "WinXP"
                vboxmanage createvm -name "WinXP" -register

                # lui attacher l'image disque avec les options audio et nat
                vboxmanage modifyvm "WinXP" -hda $DISK -nic1 nat -snapshotfolder $TMP -audio alsa

                # supprimer les extradatas
                vboxmanage setextradata global "GUI/SuppressMessages" "remindAboutAutoCapture,remindAboutInputCapture,remindAboutMouseIntegrationOn"

                # Partage des dossiers entre XP et Ubuntu
                vboxmanage sharedfolder add "WinXP" -name Documents -hostpath $MAPAGE/
                vboxmanage sharedfolder add "WinXP" -name FlashDisk -hostpath $FLASH/

         else
                echo " Disque image innaccessible, contacter votre administrateur "     
                exit 1
         fi

        # Interface simple
        vboxsdl -vm "WinXP"
        
fi


Remarques

  • * Lorsqu'on modifie, supprime, ou on déplace des fichiers dans "Mes documents" sous WinXP, il faut rafraichir la fenêtre :(

  • * Pour modifier le type de l'image pour la maintenance, sachant qu'on a disque-winxp.vdi, avec un chmod rwx
     vboxmanage modifyvm WinXP -hda none
     vboxmanage unregisterimage disk disque-winxp.vdi
     vboxmanage registerimage disk disque-winxp.vdi -type normal
     vboxmanage modifyvm WinXP -hda disque-winxp.vdi
     vboxmanage startvm WinXP -gui 
  • et c'est reparti en n'oubliant pas de remettre le mod en read-only
  • * Pour les fichiers de configurations, on a 3 types de uuid:
    • 1. Celui qui spécifie le nom de la machine virtuelle: WinXp

    • 2. L'uuid qui spécifie le "disque dur", qu'il soit immutable ou non
    • 3. Et enfin un dernier qui est spécifié quand le type est immutable
        <MachineRegistry>
          <MachineEntry src="Machines/WinXP/WinXP.xml" uuid="{f4270d7d-2c5f-4776-46af-e43f34e655dd}"/>
        </MachineRegistry>
         .....
            <HardDisk type="immutable" uuid="{85330e70-3e98-488c-0586-f01e5685fec3}">
              <VirtualDiskImage filePath="/mnt/e1.1/disque-winxp.vdi"/>
              <DiffHardDisk uuid="{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}">
                <VirtualDiskImage filePath="/mnt/VBOX/{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}.vdi"/>
              </DiffHardDisk>
            </HardDisk> 
          </HardDisks> 

A tester

  • Test VMDK
    1. Lancer VMDK depuis Gestionnaire de disk VBox
      • Sinon Convertir une image VMDK de vmware en VDI
    2. Tester le mode immutable VMDK sur VirtualBox

  • Test X-access
    • Tester l'acces de l'image depuis plusieurs machines du CDR
      • Si test ok passer a test foad
        • sinon verifier les permissions, type etc..
  • Test foad
    • Implementer le test sur quelques utilisateurs dans la salle foad

NdimbyAndriantsoavina/NotesPerso (dernière édition le 2011-09-08 11:12:41 par NdimbyAndriantsoavina)