Open Sankoré (2.1) et Net Support School (10.70)

Juste pour éviter à certains quelques heures de recherches, les deux sont incompatibles (tout du moins sur windows xp). Pas au premier abord mais dès que l’on veut utiliser la fonction « Bureau » de Sankoré, l’écran devient noir : plus de fond, plus d’icônes.

Reste à choisir entre remplacer un logiciel récent et gratuit, ou payer pour remplacer un vieux logiciel. Je crois que je vais prendre la première, surtout que iTALC n’a pas l’air de poser le soucis, ce qui est moins certains pour la dernière version de NSS.

Client linux (ubuntu 13) et réseau kwartz

Cet article décrit comment intégrer un ubuntu 13.04 à kwartz et en faire une image avec tivoli.

Partitionnement du disque et installation d’Ubuntu

Il faut d’abord connaître la version de rembo/tivoli présente sur le kwartz (Kwartz~Control > Maintenance > Rembo) :

  • Avec Rembo 2, la partition doit être en ext2 (mais cela pose d’autres problèmes par la suite, je le déconseille) ;
  • Avec Rembo 5/Tivoli, la partition doit être au mieux en ext3 avec une taille d’inode de 128 bits.

Après avoir démarré sur le cd d’ubuntu, mais avant de commencer l’installation, il faut partitionner manuellement le disque dur. Pour cela,
Ctrl + Alt + F1
$ sudo su
$ loadkeys fr

(attention, jusque ici le clavier en anglais). On obtient ainsi un terminal root.

On lance l’outil de partitionnement et créer deux partitions :
$ cfdisk /dev/sda
NB: On peut créer une partition de swap, mais les partitions ext3 suivantes seront ignorées par tivoli. Donc pas de /home ou de /usr séparé.

Il faut ensuite formatter la partition :
$ mkfs.ext3 -I 128 /dev/sda1
Si un message d’erreur indique que la partition n’existe pas, il faut forcer le kernel a redétecter les partitions (partprobe), voir simplement redémarrer.
On revient à l’interface d’installation (Ctrl + Alt + F7) et au moment de choisir les partitions d’installation, prendre « Autre chose » et ne pas reformater les partitions (ce serait dommage ^^).

Comme Rembo/Tivoli n’est pas compatible avec grub, il faut encore installer lilo pour qu’il puisse extraire le kernel :
$ apt-get -y install lilo
$ liloconfig -f
$ lilo

Une autre surprise de Tivoli : il repartitionne le disque comme il l’entend. Par exemple en installant ubuntu sur une partition système de 20 Go avec un swap de 1Go ; à la première restauration complète, tivoli va étendre au maximum la partition système, mettre un swap de 2 Go et garder environ 9 Go de libre pour son image locale. C’est pas vraiment ce qu’on peut appeler une restauration surtout que cela modifier les UUID des partitions. Pas de problème pour le fstab car tivoli le réécrit pendant la restauration, mais cela peu impacter d’autres outils comme le gestionnaire de démarrage.

Déclaration du proxy

Il y a au moins trois endroits où déclarer le proxy :

  • pour le shell, modifier ~/.bashrc et /etc/profile.d/proxy.sh :
    export http_proxy=http://IP_DU_KWARTZ:3128
    export ftp_proxy=ftp://IP_DU_KWARTZ:3128
  • pour apt, modifier le fichier /etc/apt/apt.conf.d/proxy :
    Acquire::http::Proxy "http://IP_DU_KWARTZ:3128";
    Acquire::ftp::Proxy "ftp://IP_DU_KWARTZ:3128";
  • pour l’interface graphique, modifier  /etc/profile.d/gnome.sh :
    $ gsettings set org.gnome.system.proxy mode 'manual'
    $ gsettings set org.gnome.system.proxy.http host "IP_DU_KWARTZ"
    $ gsettings set org.gnome.system.proxy.http port 3128

Authentification réseau : LDAP et PAM

Pour pouvoir se connecter avec un compte du kwartz, il faut mettre en place l’authentification par LDAP :
$ apt-get -y install openbsd-inetd pidentd libpam-ldap
Les réponses à donner dans l’ordre : ldap://IP_DU_KWARTZ > dc=MON_LYCEE,dc=FR > 3 > non > non

Dans /etc/ldap.conf, désactiver « pam_password md5 » et activer « pam_password crypt », puis :
$ auth-client-config -t nss -p lac_ldap

Lecteurs réseau

$ apt-get -y install libpam-mount smbfs
Puis déclarer les montages réseau dans /etc/security/pam_mount.conf.xml en suivant la syntaxe :
<volume uid="1000-65532" fstype="cifs" server="IP_DU_KWARTZ" path="NOM_DU_PARTAGE" mountpoint="~/POINT_DE_MONTAGE" options="iocharset=utf8" />

Autres modifications

  • Couper les mises-à-jour automatiques ; dans /etc/apt/apt.conf.d/10periodic, modifier la ligne suivante :
    APT::Periodic::Update-Package-Lists "0"
  • Désactiver le rapport de bugs ; dans /etc/default/apport, désactiver apport : enabled=0
  • Utiliser le kwartz comme serveur de temps ; modifier /etc/default/ntpdate comme suit :
    NTPDATE_USE_NTP_CONF=no
    NTPSERVERS="IP_DU_KWARTZ"
  • Tivoli ne renomme pas l’ordinateur restauré. En supprimant le fichier /etc/hostname, cela force ubuntu à utiliser le nom donné par le dhcp. À noter que si l’ordi fait sa demande de bail dhcp sur la seconde interface réseau déclarée (par exemple avec un portable), le kwartz répond en ajoutant un « _2 » au nom déclaré, ce qui met en échec la plupart des commandes réseau car le nom de l’ordi n’est plus résolvable.

Création de l’image

La création d’image suit la procédure classique ; il va uniquement demander de :

  • choisir le mode du disque dur : EIDE / SCSI ; pour les disques SATA (le cas le plus courant aujourd’hui), mettre SCSI. En cas d’erreur ici, le système restauré ne démarrera pas.
  • choisir le kernel sur lequel on veux démarrer (« Linux »).

À la restauration de l’image, tivoli va réécrire le fichier fstab en supprimant les UUID et en utilisant l’option de montage « defaults » sur  / ce qui empêche le système de redémarrer. Il faut créer un script qui va modifier le fstab après la restauration de l’image, remplaçant « defaults » (alias de « rw, suid, dev, exec, auto, nouser, async ») par la valeur par défaut de Ubuntu : « errors=remount-ro ». Le mieux que j’ai trouvé est d’ajouter au /etc/rc.local la commande : sed -i -e 's/ext2\tdefaults/ext3\terrors=remount-ro/' /etc/fstab

Script automatisé

Heureusement pour nous, un script bash (basé sur ce script) fait tout ça, et bien plus :) ; il est disponible sur mon github. Pour l’utiliser :
$ chmod +x integration_ubuntu_1304.sh
$ sudo ./integration_ubuntu_1304.sh

Il nécessite une connexion internet [sic], d’être root et d’avoir déclaré l’ordinateur en « Autorisé non filtré » (pour traverser le proxy tant qu’il n’y a pas d’authentification LDAP).

Conclusion

Pour la suite, on peut personnaliser les sessions utilisateurs en modifiant le fichier /etc/profile.d/gnome.sh.

En fait, c’est Tivoli qui limite beaucoup l’installation d’un système linux (format de l’unique partition, utilisation forcée de lilo, ré-écriture du fstab…). Il existe certainement mieux pour créer et déployer des images linux.

Liens utiles

Serveur KMS pour Office 2010 sous Windows 2003

L’activation d’un office 2010 passe habituellement par l’utilisation d’une clé MAK mais elles ne sont utilisables qu’un nombre de fois limité. Pour le déploiement d’un MS Office sur un réseau, il faut utiliser une clé KMS et donc mettre en place un serveur KMS qui va distribuer ses licences.

Sur le serveur

Dans notre cas, il faut installer une version spéciale de KMS pour windows 2003 : le KMS 1.1 puis le le patch 1.2.

Tout le paramétrage du serveur se fait en ligne de commande grâce au script slmgr.vbs présent dans le dossier C:\WINDOWS\system32 :

  • On définit une clé : cscript c:\WINDOWS\system32\slmgr.vbs -ipk MACLEKMS
  • On vérifie le statut du serveur : cscript c:\WINDOWS\system32\slmgr.vbs -dlv
  • Puis activation de la clé par internet : cscript c:\WINDOWS\system32\slmgr.vbs -ato bfe7a195-4f8f-4f0b-a622-cf13c7d16864
    (NB: je ne sais absolument pas d’où vient ce bfe7a195-4f8f-4f0b-a622-cf13c7d16864 !)

Sur le client (win Xp)

Tout le paramétrage du client se fait en ligne de commande grâce au script ospp.vbs présent dans le dossier C:\Program Files\Microsoft Office\Office14 :

  • On lance le service d’enregistrement : cscript "C:\Program Files\Microsoft Office\Office14\OSPP.vbs" /osppsvcrestart
  • On définit l’hôte KMS : cscript "C:\Program Files\Microsoft Office\Office14\OSPP.vbs" /sethst:MONSERVEUR
  • Puis on lancer la demande d’activation : cscript "C:\Program Files\Microsoft Office\Office14\OSPP.vbs" /act

Pour finir

Il faut utiliser l’Observateur d’évènements (dans les Outils d’administration) pour voir les demandes activation reçues sur le serveur. Il faut au moins 25 demandes pour que le serveur commence à les valider.

VAMT permet d’avoir un aperçu des licences existantes et des produits validés.

Ne pas oublier d’ouvrir le port 1688 sur le serveur et le client.

Liens utiles

Console distante sur une machine virtuelle VmWare depuis Linux

Le client vSphere n’existant pas sous linux (à ma connaissance), voici une technique permettant d’avoir accès à la console d’une machine virtuelle VmWare à distance depuis un client sous linux (testé sur Debian).

D’abord, il faut récupérer le plugin rvc fournit par vmware sur github. C’est un plug-in pour firefox ; il faut extraire l’archive puis créer un script bash « vmware-vmrc.sh » qui va l’exécuter :


#!/bin/bash

# Modifier le chemin d’accès pour pointer vers le dossier plugins et les infos de connexion
PATH_TO_VMRC= »/home/path/to/plugins »
HOST= »1.2.3.4″
NAME= »foo »
PASSWD= »bar »

export VMWARE_USE_SHIPPED_GTK=yes
cd $PATH_TO_VMRC
./vmware-vmrc -h $HOST -u $NAME -p $PASSWD > /dev/null 2>&1 &
cd – > /dev/null 2>&1

Ne pas oublier de faire un : chmod 100 vmware-vmrc.sh

NB: On peut se passer des paramètres HOST, NAME et PASSWD mais il faudra retaper ces infos à chaque utilisation.

Lien externe

> Gnome 3 vmware-console with vmware-vmrc fix (grande source d’inspiration :)

InstallRite : reproduire automatiquement l’intallation d’un logiciel

InstallRite est un logiciel qui permet de reproduire les modifications apportées par l’installation d’un logiciel en comparant l’état du système avant et après installation. Il génère un paquet autonome que l’on peut installer silencieusement (unattended).

Utilisation

Comme le site office a disparu, voici un lien de téléchargement. L’interface a l’air sortie d’une autre époque mais j’ai testé sous WinXp et ça marche d’enfer ; c’est même plus rapide que ce dont je m’attendais.

Pour créer un paquet, il cliquer sur « Install new software and create an InstallKit », choisir le programme d’installation (on peut inclure ou exclure certains dossiers spécifiques), puis installer le programme normalement. Un fois l’installation terminée, InstallRite re-apparait ; il suffit alors de faire « Build InstallKit » pour générer la paquet d’installation (ne pas oublier de cocher « Quiet installer »).

Liens

Unattended install avec WinDEV

L’installation silencieuse d’un programme empaqueté avec WinDEV n’est pas très bien documentée, mais voici les options que j’ai fini par trouver (merci à l’article Le fameux DWORD sur FreeDEV.eu).

Pour l’installation, il faut utiliser le paramètre /SILENT

Pour la désinstallation, il faut créer une clé DWORD nommée SILENT de valeur 1 dans :
HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall\MONPROGRAMME

Il ne reste plus qu’à appeler le programme WDUNINST.EXE dans le répertoire d’installation du programme.