====== Les scripts qui facilitent la vie ======
//Sur **lnx** (la nouvelle machine linux) certaines scripts sont là pour nous faciliter la vie. Les voici.//
===== Archives, les scripts de linux1=====
^Commande ^Resp.(linux1) ^Etat (linux1)^Man (linux1)^Resp.(lnx) ^Etat (lnx)^Man (lnx)^
|initpass reinitpasswd | MCD | OK | OK | FMA |ok | ok + ---h|
|esiinfo | MCD | OK | OK | MCD |ok |ok |
|presences | MBA | OK | OK | MBA |ok |ok |
|casier | MCD | OK | | MCD+PBT+FMA |ok |ok |
|casierlog | MCD | OK | OK | MCD+FMA |ok |ok |
|casiersearch | MCD | OK | OK | FMA |en cours | |
|casierget | MCD | - | - | MCD+PBT+FMA |ok |ok |
|checkprojet ckmodprojet | MCD | OK | OK | MCD+FMA |ok |ok|
|java2pdf | ? | ? | | MCD+PBT |en cours | |
|peek | | | | PBT | X | |
|pop | | | | PBT | X | |
|push | | | | PBT | X | |
|surveille | MBA | OK | OK | X | X | |
|filtrecommande | MBA | OK | OK | X | X | |
|checkmultisession | MBA | OK | OK | X | X | |
|logsurveille | MBA | OK | OK | X | X | |
|shortlogsurveille | MBA | OK | OK | X | X | |
|casier-sudo | MCD | OK | | X | X | |
|zipCasier | MCD | ? | | X | X | |
|voir | ? | OK | | X | X | |
X = abandonné
Dans les man, on ajoutera ''(ESI)'' en fin de description. Dès lors, on peut avoir la liste complète des commandes locales avec ''apropos -e esi'' --MCD
===== casierlog =====
__Fichiers__ :
* ''/usr/local/bin/casierlog'' : le script
* ''/usr/local/etc/casier.conf'' : le fichier de configuration commun à toutes les commandes casierxxx
* ''/usr/local/man/man1/casierlog.1'' : le manuel
__Dépendances__ :
* Dépend de la commande ''esiinfo'' pour afficher les noms d'étudiants à la place des usernames.
===== casiersearch =====
(anc. triche) Cherche une chaîne dans tous les casiers profs.
__Fichiers__ :
* ''/usr/local/bin/casierseek'' : le script
* ''/usr/local/man/man8/casierseek.8'' : le manuel
__Restrictions__ :
* Considère qu'un prof est un user composé de 3 caractères
* L'emplacement du casier est encore hardcodée
===== checkmultisession =====
montre périodiquement les connections multiples étudiant.
__Fichiers__ :
* ''/usr/local/bin/checkmultisession''
* ''/tmp/logsurveille'' : le fichier de log
__Restrictions__ :
* Réservé aux membres du groupe prof
* Sensible au problème des connections fantôme
__Dépendances__ :
* Se base sur l'output de la commande who
* Suppose qu'un login etudiant est de la forme gxxxxx
__Contrainte__ :
* Le script apartient au groupe prof
===== checkprojet =====
__Fichiers__ :
* ''/usr/local/bin/checkprojet'' : programme C qui sert de wrapper au script afin de pouvoir le lancer avec les droits d'un autre utilisateur (en l'occurence etd1)
* ''/usr/local/src/checkprojet.c'' : le source du programme C ci-dessus
* ''/usr/local/bin/checkprojet.sh'' : le script qui effectue le travail; appelé par checkprojet
* ''/usr/local/etc/checkprojet.conf'' : le fichier de configuration (quels fichiers chercher ?)
* ''/usr/local/man/man1/checkprojet.1'' : le manuel
__Dépendances__ :
* Le script est lancé avec les droits de l'utilisateur **''etd1''**. Il faut que cet utilisateur existe et soit dans le groupe étudiant.
===== esiinfo =====
__Fichiers__ :
* ''/usr/local/bin/esiinfo'' : le script PERL
* ''/usr/local/man/man1/esiinfo.8'' : le manuel
__Dépendances__ :
* Suppose d'un login étudiant est de la forme gxxxxx
* Va chercher le nom complet dans le fichier ''/usr/local/comptes/listetud'' (on pourrait aussi la trouver dans ''/etc/passwd'')
===== filtrecommande =====
Détecte, mémorise et signale toute commande suspecte.
__Fichiers__ :
* ''/tmp/logsurveille'' : le fichier de log
__Dépendances__ :
* ''/usr/local/etc/profile'' : applique le filtre aux commandes
* Se base sur le format du login etudiant gxxxxx ou etdx
* ''/usr/local/etc/profsjava.conf'' : les login des professeurs qui recevront un mail
===== initpass =====
__Fichiers__ :
* ''/usr/local/bin/initpass'' : le script
* ''/usr/local/man/man8/initpass.8'' : le manuel
__Dépendances__ :
* Va chercher le mot de passe d'origine dans le fichier ''/usr/local/comptes/CptEtdLinux''
===== presences=====
prise de presences dans un local de l'ESI
__Fichiers__ :
* ''/home/xxx/Presences'' : répertoire qui contient les fichiers de présence
__Dépendances__ :
* Se base sur l'output de la commande who
===== push =====
Destiné à remplacer le script casier.
Permet à un user (généralement un étudiant) de déposer un fichier ou un répertoire dans un casier.
Ce script archive le contenu du casier (attribué à user) dans le sous-répertoire archives.
Synopsis
push [fichiers | répertoire]
**Remarque**: Il semblerait que le répertoire casier ne se trouve pas dans le home du prof mais dans un répertoire dédié (/casier par exemple).
===== pop =====
Permet à un user (uniquement prof) de
- récupérer le contenu de son casier dans un répertoire local (cp)
- d'archive le casier (mv) dans le sous-répertoire archives
- (et donc de "vider" le casier puisque tout est déplacé dans archives)
Synopsis
pop [login etudiant] [répertoire local]
Par défaut prend tout le casier (sauf le sous-répertoire archives)
Par défaut "répertoire local" = ~/pop (par exemple)
===== peek =====
Permet à un user (quelqconque) de voir le contenu du casier qui le concerne.
S'il est prof, il peut tout voir, s'il est étudiant il ne peut voir que les fichiers
lui appartenant. Ce script ne montre pas le contenu du sous-répertoire archives.
Synopsis
peek [user]
Si celui qui lance le script est prof, montre le contenu /casier/acr/ ou /casier/acr/user (si user est renseigné)
Si celui qui lance le script est étudiant, montre le contenu /casier/acr/ (pas de paramètres dans ce cas).
===== surveille=====
affiche les dernières commandes suspectes et/ou connections multiples
__Dépendances__ :
* checkmultisession
* filtrecommande
* ''/tmp/logsurveille'' : le fichier de log rempli par les deux commandes précédentes