====== 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