Wiki ~ namok.be

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 <acroyme prof> [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

  1. récupérer le contenu de son casier dans un répertoire local (cp)
  2. d'archive le casier (mv) dans le sous-répertoire archives
  3. (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/<user qui lance le script> (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