Modifications entre les versions 70 et 137 (s'étendant sur 67 versions)
Version 70 à la date du 2007-11-29 12:43:55
Taille: 11139
Commentaire: " optimisation " du script
Version 137 à la date du 2008-12-19 18:10:30
Taille: 4745
Commentaire:
Texte supprimé. Texte ajouté.
Ligne 1: Ligne 1:
= TAF pour pouvoir virtualiser correctement =
== Idée principale ==
* Mettre tous ceux qui est lourd sur la machine proprement et pourquoi pas une nouvelle partition carrément dite '' /mnt/VBOX/ ''
  .* l'image de l'os (2Go) iso.vdi
  .* le snapshot, pour le traitement de la diffèrence après qu'il soit immutable (8,5ko --> 2Go durant la session de l'utilisateur sur la machine) {05f0......}.vdi avec les permissions sudo chmod 770 /mnt/VBOX/
=== A faire dans l'urgence ===

 --( Installer les portables de MG et TT )--
 * Migrer les postes du personnel:
  * --( DD )--
  * FS(appliAccess)
    * /opt/vbox/WIN.vdi
    * /

  * Visiteurs
  * TS
  * BG
 * Mettre telefon.sn.auf sur pied
   * [[http://wiki.auf.org/wikiteki/ZAO/Dakar/Configuration/Voip/TDM2400|Configuration]]
   * [[http://wiki.auf.org/wikiteki/ZAO/Dakar/Configuration/Voip/MenuDAccueil|Menu d'accueil]]
 * Test du /net/home en vrai
 * CDR en intrepid
 * Logo AUF carte abonnement
 
=== Notes en vrac ===
 * [[http://wiki.auf.org/wikiteki/NdimbyAndriantsoavina/VirtualBox|virtualbox sur nfs]]
 * [[http://wiki.auf.org/wikiteki/ZAP/ModèlesDeConfiguration|cupspdf]]: @{HOMEDIRS}=/nfs/home* dans /etc/apparmor.d/tunables/home
Ligne 8: Ligne 25:
* 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 ==
  
* Donner les droits aux systèmes pour autoriser l'utilisateur
 '' groupadd vboxusers; sudo chgrp vboxusers /dev/vboxdrv; chmod 777 /dev/vboxdrv ;sudo adduser $USERNAME vboxusers ''

* Donner aux fichiers de conf cités plus haut les permissions ont les faisant appartenir au groupe vboxusers:
'' sudo chgrp -R vboxusers /mnt/VBOX/ ''

* Appliquer les droits nécessaires aux fichiers ou se trouve l'image seule pour un accès multiutilisateurs

* Ajouter les utilisateurs (pourquoi pas groupes!) dans vboxusers
  ''sudo usermod -G vboxusers -a $USERNAME ''
==== Install mobile ====
En attendant auf-poste-client-mobile ou eventuellement auf-laptop
 1. Verification bios
 2. Install system
 3. Verification matériel:
   * raccourcis clavier, touche FN
   * verification hardware lspci, lshw, webcam, xserver-xorg-input-synaptics
   * video apres fermeture ecran
xorg.conf
{{{
Section "Device"
        Identifier "Configured Video Device"
        Driver "intel"
        Option "XVideo" "Off"
EndSection
...........
Ligne 28: Ligne 43:
* 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
}}}
   * son apres fermeture ecran
/etc/modprobe.d/modules/options
{{{
options snd_hda_intel model=3stack-dig
}}}
   * Modifier la gestion d'energie pour veiller à l'autonomie, ecran fermé, 2nd écran, effets visuels, gconf-editor/apps/nautilus
 4. Installer les logiciels de bases
   * Groupe utilisateur video, fuse, audio
   * auf-poste-client-logiciels
   * auf-poste-client-reflets
 5. Parametrages divers
   * [[http://wiki.auf.org/wikiteki/ZAO/Dakar/Configuration/ClientDeMessagerie|Thunderbird]]
   * jabber
   * Montage ssh sshfs bao.sn.auf: BAO
   * OpenVPN si il est pas sur le RPV

==== Install client-poste-fixe ====
nb: bug auf-desktop dans /etc/dhcp3/dhclient-exit-hooks.d/auf-nfs {-fstype=nfs,noatime,noexec,intr,proto=tcp}

 1. Installation de Hardy basique (ubuntu-desktop, en français), mv home home.local + vipw
 1. Mise en place sources.list dépôt AUF et installation de auf-keyring
 1. aptitude install auf-poste-client-fixe
  * nb : répondre oui à l'écrasement de `dhclient.conf`
 1. initialisation de la synchro par `/usr/sbin/auf-poste-client-fixe-synchro-init`
 1. pour s'assurer que tout redémarre bien (gdm, nscd, etc) : rebooter
 1. ... et c'est fini

=== Mise en place infrastructure ===

 1. DNS-DHCP pour les postes clients
 1. Dans la zone DNS du réseau, ajouter une machine appellée "autoconfig"
  . nb : cette machine doit être accessible en ssh (port 22/tcp) depuis tous les postes clients à auto-configurer
  . idée : prendre une machine existante...
 1. Sur la machine autoconfig créer un compte qui s'appelle "auf-autoconfig"
  . mot de passe important: ce sera le mot de passe pour initialiser la synchro de configuration des postes clients
  . ne pas oublier de le rendre accessible en ssh
 1. Sur le compte '''auf-autoconfig''' :
  1. création d'une clé à destination du root des postes clients (sans passphrase) :
   {{{
auf-autoconfig@autoconfig:~$ ssh-keygen -t dsa -b 1024 -f ./id_dsa -N "" -C "root@auf-poste-client"
}}}
  1. création du .tar.gz contenant ces clés :
   {{{
auf-autoconfig@autoconfig:~$ tar zcvf ssh-root-keys.tar.gz id_dsa id_dsa.pub authorized_keys(root@nfs)
auf-autoconfig@autoconfig:~$ chmod 400 ssh-root-keys.tar.gz
}}}
  1. donner à cette clé l'accès au compte auf-autoconfig :
   {{{
auf-autoconfig@autoconfig:~$ mkdir .ssh
auf-autoconfig@autoconfig:~$ cat id_dsa.pub >> .ssh/authorized_keys
auf-autoconfig@autoconfig:~$ chmod 600 .ssh/authorized_keys
auf-autoconfig@autoconfig:~$ chmod 700 .ssh
}}}
 1. Création des racines : cf partie suivante

=== Création d'une racine pour hardy ===
tar -ztf root-hardy.tar.gz
Ligne 32: Ligne 103:
vboxmanage setproperty vdifolder /mnt/VBOX/
vboxmanage setproperty machinefolder default
vboxmanage setproperty vrdpauthlibrary default
vboxmanage setproperty hwvirtexenabled no }}}

* Rendre l'image immutable avant de l'attacher, sinon pour la machine type avoir une image normal

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

* Créer la machine virtuelle
{{{
vboxmanage createvm -name WinXP -register}}}

 
* Attacher le disque à la machine virtuelle, faire une translation d'adresse et mettre les snapshots dans un dossier temporaire:

{{{
vboxmanage modifyvm WinXP -hda disque-winxp.vdi -nic1 nat -snapshotfolder /mnt/VBOX }}}

* 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}}}


* Lancer WinXP sur Vbox en interface graphique: ''vboxmanage startvm WinXP -gui''

* La configuration en mode graphique est beaucoup plus simple. Ne pas oublié d'activé l'usb, le son (mode ALSA), le dossier de partage ou bien les proprietés par defauts.

* Configuration dans WinXP:
 .* Plugins flash, ActiveX dans iexplorer
 .* Logiciels dépendant de la formation


== II. Configuration sur les machines foad ==

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

* Donner les droits aux dossiers /mnt/VBOX à tous les vboxusers.
  {{{
     sudo chown -R ndimby:vboxusers /mnt/VBOX
     sudo chmod 770 /mnt/VBOX }}}
 . /!\ Les droits sont importants pour éviter d'avoir un os virtuel marqué immutable, alors qu'il ne l'est pas, surtout apres le processus du copie-coller!!

* Diffuser l'image iso.vdi et le snapshot directement sur /mnt/VBOX/ de chaque poste client
 .1. archiver, copier, coller et mettre le tout sur une clé USB :)

 .Tentative de script de test pour décompresser et copier les fichiers de configuration

 .* A executer en tant que super user
 {{{
       #!/bin/bash
       
    # Opération de SU
    # Copie et extraction des images
       echo "Copie en cours ..."
       cp /media/disk/Image_Backup.tar.gz /mnt/VBOX/
       cd /mnt/VBOX/
       tar -xvzf Image_Backup.tar.gz

     #Distribution des droits
       chgrp vboxusers /dev/vboxdrv
       chmod 777 /dev/vboxdrv
       sudo adduser $USERNAME vboxusers
       chown $USERNAME "/mnt/VBOX/{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}.vdi"
       exit 0
 }}}
 
 .* A executer a partir d'un prompt de l'utilisateur
 {{{
     #!/bin/bash
     # Commandes propre à l'utilisateur
       cd "$HOME"
     # Prendre les fichiers de conf dans le répertoire et le mettre dans le home de l'utilisateur
       tar -xzf /media/disk/VirtualBox_Conf.tar.gz

     # Remplacer les occurences de @HOME@ du fichier xml
     # <SharedFolders>
     # <SharedFolder hostPath="@HOME@/Documents" name="Documents"/>
     # </SharedFolders>
       sed -i -e "s|@HOME@|$HOME|g" .VirtualBox/Machines/WinXP/WinXP.xml

       echo " ... OK "

       exit 0 }}}
 
 .2. Faire un script qui crée une nouvelle configuration de machine virtuelle au lieu remplaceer les occurences

{{{
#!/bin/bash

VDI=$HOME
TMP=/mnt/VBOX
MAPAGE=/nfs$HOME/Desktop/

if [ -e $HOME/.VirtualBox ] ; then
    rm -rf $HOME/.VirtualBox
fi

# Nettoyage des disques de diffèrences
if [ -e $TMP/{* ] ; then
    rm -rf $TMP/{*
fi

# repertoires des images sources des machines dans le homedir
vboxmanage setproperty vdifolder $VDI

# conf des machines restent dans le homedir
vboxmanage setproperty machinefolder defaults

# faire reconnaitre notre image modele
vboxmanage registerimage disk disque-winxp.vdi -type immutable

# creer la machine du nom de "WinXP"
vboxmanage createvm -name WinXP -register

# lui attacher l image disque'
vboxmanage modifyvm WinXP -hda disque-winxp.vdi -nic1 nat -snapshotfolder $TMP -audio alsa

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

vboxmanage sharedfolder add WinXP -name Documents -hostpath $MAPAGE


vboxmanage startvm WinXP -gui
./
./etc/
./etc/libnss-mysql-root.cfg
./etc/libnss-mysql.cfg
./var/
./var/lib/
./var/lib/auf-poste-client-fixe/
./var/lib/auf-poste-client-fixe/synchro-postinst
Ligne 172: Ligne 114:
 .3. option 2: Peut être l'[http://www.nas-central.org/index.php?title=Vblade_-_ATA_over_Ethernet ATAoE Pojects ] avec un serveur Vblade ...
 
----
Ligne 176: Ligne 115:
==== Remarques ====
 . * '' Lorsqu'on modifie, supprime, ou on déplace des fichiers dans "Mes documents" sous WinXP, il faut rafraichir le fenêtre :( ''
 1. etc/libnss-mysql.cfg
 {{{
--------
getspnam SELECT username,password,lstchg,min,max,warn,inact,expire,flag \
            FROM users \
            WHERE username= binary '%1$s' \
---------
host 192.168.1.1 (serveur sql)
database tablenss
username user
password lepassnss
timeout 3
compress 0
 }}}
Ligne 179: Ligne 130:
 . * Après que ndimby s'est connecté et qu'il a manipulé vbox, il se deconnecte. Ndimby2 se connecte et veut lancer vbox. Il recoit une erreur que le disque est unbootable. Donc on relance une deuxième fois. Et la ca marche! Et inversement. On a remarqué en effet que Vbox change le propriétaire et le groupe du disk automatiquement. Si on utilise le même disque de différence, vbox génère une erreur en changeant de compte car le disque de diffèrence n'appartient pas au compte courant (ndimby2). Et la corrige tout de suite après.  1. etc/libnss-mysql-root.cfg
 {{{
username xxxx
password xxxx
 }}}

 1. var/lib/auf-poste-client-fixe/synchro-postinst
Ligne 181: Ligne 138:
 -rw------- 1 ndimby users 330310144 2007-11-15 15:01 /mnt/VBOX/{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}.vdi }}} if [ ! -e /home ]; then
 ln -s /net/nfs.refer.sn/home /
fi
Ligne 183: Ligne 142:
  . ''Peut-être parce que virtualbox « corriger » les droits ? Ré-essayer en mettant un `umask 007` avant le lancement de virtualbox. -- ProgFou''

 . * Pour modifier le type de l'image pour la maintenance, sachant qu'on a disque-winxp.vdi:
 {{{
 vboxmanage modifyvm WinXP -hda none
 vboxmanage unregisterimage disk disque-winxp.vdi
 vboxmanage registerimage disk iso.vdi -type normal
 vboxmanage modifyvm WinXP -hda disque-winxp.vdi
 vboxmanage startvm WinXP -gui }}}
 . et c'est reparti

 . * 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/VBOX//iso.vdi"/>
          <DiffHardDisk uuid="{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}">
            <VirtualDiskImage filePath="/mnt/VBOX/{db7c4e20-7a9c-4d72-ecbb-96a07249f8c5}.vdi"/>
          </DiffHardDisk>
        </HardDisk>
      </HardDisks> }}}
 

 . * Le fait de détacher le disque dur, et de le remettre créer une nouvelle image de différence avec un uuid différent. Il serait préferable de ne pas afficher Applications->Outils Systèmes->Innotek VirtualBox, autant mettre un lanceur avec ''' vboxmanage startvm WinXP -gui '''
 
 . * VirtualBox_1.5.0 livré avec l'auf-desktop, sinon installer VirtualBox_1.5.2_OSE

  .* 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 '''


==== Erreurs rencontrées ====

* --( ''si on crée un autre fichier de configuration sur une machine cliente et qu'on y attache juste le disque 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!!!

* ç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: relancer 2 à 3 fois vbox mais c'est pas vraiment une solution...vbox 1.5.2??
 
* --( 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 au groupe vboxusers en lecture, écriture!
 
* Lorsque la machine hôte est saturé en espace disque on a:
Host system reported disk full. VM execution is suspended. You can resume after freeing some space.

ID Erreur:
DevATA_DISKFULL
Sévérité:
Erreur non Fatale
 -->Solution: Créer une nouvelle partition et appliqué l'idée principale
if [ ! -e /home2 ]; then
 ln -s /net/nfs.refer.sn/home2 /
fi
 }}}

A faire dans l'urgence

  • Installer les portables de MG et TT

  • Migrer les postes du personnel:
    • DD

    • FS(appliAccess)
      • /opt/vbox/WIN.vdi
      • /
    • Visiteurs
    • TS
    • BG
  • Mettre telefon.sn.auf sur pied
  • Test du /net/home en vrai
  • CDR en intrepid
  • Logo AUF carte abonnement

=== Notes en vrac ===

Install mobile

En attendant auf-poste-client-mobile ou eventuellement auf-laptop

  1. Verification bios
  2. Install system
  3. Verification matériel:
    • raccourcis clavier, touche FN
    • verification hardware lspci, lshw, webcam, xserver-xorg-input-synaptics
    • video apres fermeture ecran

xorg.conf

Section "Device"
        Identifier      "Configured Video Device"
        Driver          "intel"
        Option          "XVideo" "Off"
EndSection
...........
  • son apres fermeture ecran

/etc/modprobe.d/modules/options

options snd_hda_intel model=3stack-dig
  • Modifier la gestion d'energie pour veiller à l'autonomie, ecran fermé, 2nd écran, effets visuels, gconf-editor/apps/nautilus
  1. Installer les logiciels de bases
    • Groupe utilisateur video, fuse, audio
    • auf-poste-client-logiciels
    • auf-poste-client-reflets
  2. Parametrages divers
    • Thunderbird

    • jabber
    • Montage ssh sshfs bao.sn.auf: BAO
    • OpenVPN si il est pas sur le RPV

Install client-poste-fixe

nb: bug auf-desktop dans /etc/dhcp3/dhclient-exit-hooks.d/auf-nfs {-fstype=nfs,noatime,noexec,intr,proto=tcp}

  1. Installation de Hardy basique (ubuntu-desktop, en français), mv home home.local + vipw
  2. Mise en place sources.list dépôt AUF et installation de auf-keyring
  3. aptitude install auf-poste-client-fixe
    • nb : répondre oui à l'écrasement de dhclient.conf

  4. initialisation de la synchro par /usr/sbin/auf-poste-client-fixe-synchro-init

  5. pour s'assurer que tout redémarre bien (gdm, nscd, etc) : rebooter
  6. ... et c'est fini

Mise en place infrastructure

  1. DNS-DHCP pour les postes clients
  2. Dans la zone DNS du réseau, ajouter une machine appellée "autoconfig"
    • nb : cette machine doit être accessible en ssh (port 22/tcp) depuis tous les postes clients à auto-configurer
    • idée : prendre une machine existante...
  3. Sur la machine autoconfig créer un compte qui s'appelle "auf-autoconfig"
    • mot de passe important: ce sera le mot de passe pour initialiser la synchro de configuration des postes clients
    • ne pas oublier de le rendre accessible en ssh
  4. Sur le compte auf-autoconfig :

    1. création d'une clé à destination du root des postes clients (sans passphrase) :
      • auf-autoconfig@autoconfig:~$ ssh-keygen -t dsa -b 1024 -f ./id_dsa -N "" -C "root@auf-poste-client"
    2. création du .tar.gz contenant ces clés :
      • auf-autoconfig@autoconfig:~$ tar zcvf ssh-root-keys.tar.gz id_dsa id_dsa.pub authorized_keys(root@nfs)
        auf-autoconfig@autoconfig:~$ chmod 400 ssh-root-keys.tar.gz
    3. donner à cette clé l'accès au compte auf-autoconfig :
      • auf-autoconfig@autoconfig:~$ mkdir .ssh
        auf-autoconfig@autoconfig:~$ cat id_dsa.pub >> .ssh/authorized_keys
        auf-autoconfig@autoconfig:~$ chmod 600 .ssh/authorized_keys
        auf-autoconfig@autoconfig:~$ chmod 700 .ssh
  5. Création des racines : cf partie suivante

Création d'une racine pour hardy

tar -ztf root-hardy.tar.gz

./
./etc/
./etc/libnss-mysql-root.cfg
./etc/libnss-mysql.cfg
./var/
./var/lib/
./var/lib/auf-poste-client-fixe/
./var/lib/auf-poste-client-fixe/synchro-postinst
  1. etc/libnss-mysql.cfg
    --------
    getspnam    SELECT username,password,lstchg,min,max,warn,inact,expire,flag \
                FROM users \
                WHERE username= binary '%1$s' \
    ---------
    host        192.168.1.1 (serveur sql)
    database    tablenss
    username    user
    password    lepassnss
    timeout     3
    compress    0
  2. etc/libnss-mysql-root.cfg
    username xxxx
    password xxxx
  3. var/lib/auf-poste-client-fixe/synchro-postinst
    if [ ! -e /home ]; then
            ln -s /net/nfs.refer.sn/home /
    fi
    
    if [ ! -e /home2 ]; then
            ln -s /net/nfs.refer.sn/home2 /
    fi

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