bonjour,
j'aime bien ce site et j'apporte ma petite pierre sur ce forum
je m'adresse aux administrateurs de léa pour créer un topic sur "La gestion de jeton sous DOS pour station windows avec samba"
"je suis de l'ancienne école" et j'ai réalisé un petit programme sous DOS à améliorer
existant :
j'ai env. 20Pc en réseaux avec un serveur linux et samba
un logon.bat sur le serveur lancé sur chaque stations au logon de celles-ci
mes besoins :
sous un serveur linux avec samba j'ai procédé à des installations administratives de Ooo pour mes clients windows 2000 et XP uniquement. Mise sous logon.bat avec une commande IF EXIST pour ne pas écraser plusieurs fois les installations précédentes.
le problème c'est que si j'ai par exemple 20 clients qui ce connectent le matin avec une mise à jour de Ooo, je fais ramer mon serveur, ce qui n'est pas acceptable.
je n'ai pas d'argent pour l'achat d'un logiciel de gestion d'installation...
étude :
bridage du nombres d'installation automatique en même temps,
j'ai mis au points un algorithme que voici,
et voilà la partie la plus intéressante le programme proprement dit :-)
echo off
rem Fait par Oc le 3 aout 2006
echo .
echo .
echo Processus de don de jetons pour installation automatique
echo Ne pas fermer cette fenetre merci
echo .
echo .
rem ------------------------------------------------------
echo initialisation des variables
set nbmaxjetons=5
rem Nombre Max d'utilisateurs pouvant lancer l'installation en même temps
set jeton=0
set path_jeton=H:\Log\jetons
rem dossier de stocage des jetons sur mon serveur avec les droits R/W pour tout les utilisateurs
echo .
echo .
rem ------------------------------------------------------
echo demande de jeton pour l'installation
set /a nbmaxjetons=%nbmaxjetons%+1
:debut
set /a jeton=%jeton%+1
echo demande jeton Numéro %jeton%
if "%jeton%"=="%nbmaxjetons%" (goto fin)
if NOT EXIST "%path_jeton%\jeton%jeton%" (echo %USERNAME%,%COMPUTERNAME% >> %path_jeton%\jeton%jeton% >> %path_jeton%\jeton%jeton% & goto suite) ELSE (goto debut)
:suite
rem ------------------------------------------------------
echo Vérification du jeton %jeton%
echo %USERNAME%,%COMPUTERNAME% > %TEMP%\jeton%jeton%
rem ------------------------------------------------------
echo lancement des programmes d'installation administratives
rem pause
rem exemple : if NOT EXIST "%ProgramFiles%\install_log\ooo-202.log" (echo installation de Ooo en cours & echo %date%,%time%,%USERNAME%,%COMPUTERNAME%,installation de Ooo en cours>>%log_path% & start /WAIT H:\autoinstall\client\Standart\openoffice\install-jre-Ooo.bat) ELSE (echo instalation de Ooo n'est pas a faire & echo %date%,%time%,%USERNAME%,%COMPUTERNAME%,instalation de Ooo n'est pas a faire>>%log_path%)
rem exemple : c'est un peut long et j'ai pas mis mes variables d'installation dans cette exemple
rem exemple : mais je lui demande de faire une commande SI, des log de l'installation et de lancer ou pas le fichier « install-jre-Ooo.bat »
echo .
echo .
rem ------------------------------------------------------
echo Liberation du jeton Numero %jeton%
rem del "%path_jeton%\jeton%jeton%"
del "%TEMP%\jeton%jeton%"
:fin
echo fin
les limites de ce programme :
le même jeton pris par 2 PC en même temps « c'est très rare, mais ça peut arriver »
la non libération du jeton via d'un problème de plantage ou intervention d'utilisateurs
(j'ai réglé en partie le problème en inscrivant dans le jeton le nom de l'utilisateur et le Nom du PC)
je met ce petit programme dans vos mains sous licences GPL
modifiable a volonté mais dans l'esprit du libre
merci d'avoir lus jusqu'a la fin ;-p