# TaBr - tabr_deluser pour supprimer un utilisateur 2023-05-14T21:38:21Z Ce 2e script est très court, mais autant le prévoir tout de suite. Comme son nom l'indique, il permettra de supprimer un utilisateur. Il s'utilisera ainsi: ``` doas -u _tabr_admin tabr_deluser hseldon ``` Comme d'hab, on commence par charger la configuration, prévoir une fonction qui indique comment se servir du script, et vérifier qu'un nom d'utilisateur a bien été donné en argument: ``` . /etc/tabr.conf usage() { printf "%s <username>\n" $0 exit 1 } ## get arguments into variables [[ -z "${1}" ]] && usage ``` Vous noterez ici que j'utilise un test "si chaîne nulle" et non "si nombre d'argument est égal à 1". C'est parce que j'ai passé le flag "-e" au shebang, qui provoque l'arrêt du script en cas d'erreur. Or, si un test échoue, c'est considéré comme une erreur. Pour simplifier la suite, on met le nom d'utilisateur dans une variable: ``` u="${1}" ``` Et c'est tout, on peut supprimer l'utilisateur: ``` ## system user doas /usr/sbin/userdel -r "${u}" ``` Vous noterez l'option "-r" qui permet de supprimer aussi le dossier personnel de l'utilisateur. ``` ## xmpp account doas /usr/local/sbin/prosodyctl deluser "${u}@${domain}" ``` On en fait de même avec prosody. Si on avait ajouté l'utilisateur à une installation dokuwiki, on pourrait aussi avoir ensuite: ``` php /path/to/dokuwiki/bin/plugin.php usermanager delete hseldon ``` Pour terminer, on supprimer les fichiers qui contenaient le code de récupération et les instructions destinées à l'utilisateur: ``` ## recovery file rm ${data}/${u} ## instructions rm "${data_instructions}/${u}.txt" ``` Et voilà! Prochains articles : on décrit le changement de mot de passe, et l'interface CGI qui permettra de faire la demande. ## Une réaction? => mailto:bla@bla.si3t.ch?subject=TaBr-tabr_deluser-part2.gmi Envoyez votre commentaire par mail (anonyme). => /log/commentaires/ Mode d'emploi de la liste de diffusion pour recevoir les réponses.