userdel(8) supprimer un compte utilisateur et les fichiers associés

SYNOPSIS

userdel [options] LOGIN

DESCRIPTION

userdel

is a low level utility for removing users. On Debian, administrators should usually use deluser(8) instead.

La commande userdel modifie les fichiers d'administration des comptes du système, en supprimant les entrées qui se réfèrent à LOGIN. L'utilisateur nommé doit exister.

OPTIONS

Les options disponibles de la commande userdel sont :

-f, --force

Cette option impose la suppression de l'utilisateur, même s'il est encore connecté. Elle force également userdel à supprimer son répertoire personnel et sa file d'attente des courriels, même si un autre utilisateur utilise le même répertoire personnel ou si l'utilisateur précisé n'est pas le propriétaire de la file d'attente des courriels. Si USERGROUPS_ENAB vaut yes dans /etc/login.defs et si un groupe existe avec le même nom que l'utilisateur supprimé, alors ce groupe sera supprimé, même s'il s'agit du groupe primaire d'un autre utilisateur.

Remarque : Cette option est dangereuse, elle peut laisser votre système dans un état incohérent.

-h, --help

Afficher un message d'aide et quitter.

-r, --remove

Les fichiers présents dans le répertoire personnel de l'utilisateur seront supprimés en même temps que le répertoire lui-même, ainsi que le répertoire d'attente des courriels. Vous devrez rechercher et éliminer vous-même les fichiers situés dans d'autres systèmes de fichiers.

Le répertoire d'attente des courriels est défini par la variable MAIL_DIR dans login.defs.

-R, --root RÉP_CHROOT

Appliquer les changements dans le répertoire RÉP_CHROOT et utiliser les fichiers de configuration du répertoire RÉP_CHROOT.

-Z, --selinux-user

Élimine toute association avec tout utilisateur SELinux pour la connexion de l'utilisateur.

CONFIGURATION

Les variables de configuration suivantes dans /etc/login.defs modifient le comportement de cet outil :

MAIL_DIR (chaîne de caractères)

Répertoire d'attente des courriels (« mail spool directory »). Ce paramètre est nécessaire pour manipuler les boîtes à lettres lorsque le compte d'un utilisateur est modifié ou supprimé. S'il n'est pas spécifié, une valeur par défaut définie à la compilation est utilisée.

MAIL_FILE (chaîne de caractères)

Définir l'emplacement des boîtes aux lettres des utilisateurs relativement à leur répertoire personnel.

Les paramètres MAIL_DIR et MAIL_FILE sont utilisés par useradd, usermod et userdel pour créer, déplacer ou supprimer les boîtes aux lettres des utilisateurs.

MAX_MEMBERS_PER_GROUP (nombre)

Nombre maximum de membres par entrée de groupe. Lorsque le maximum est atteint, une nouvelle entrée de groupe (ligne) est démarrée dans /etc/group (avec le même nom, même mot de passe, et même GID).

La valeur par défaut est 0, ce qui signifie qu'il n'y a pas de limites pour le nombre de membres dans un groupe.

Cette fonctionnalité (groupe découpé) permet de limiter la longueur des lignes dans le fichier de groupes. Ceci est utile pour s'assurer que les lignes pour les groupes NIS ne sont pas plus grandes que 1024 caractères.

Si vous avez besoin de configurer cette limite, vous pouvez utiliser 25.

Remarque : les groupes découpés ne sont peut-être pas pris en charge par tous les outils (même dans la suite d'outils Shadow). Vous ne devriez pas utiliser cette variable, sauf si vous en avez vraiment besoin.

USERDEL_CMD (chaîne de caractères)

Si définie, la commande est exécutée lors de la suppression d'un utilisateur. Elle pourra supprimer toutes les tâches périodiques cron ou at, tous les travaux d'impression, etc. de l'utilisateur (qui sera fourni comme premier paramètre).

Le code de retour du script n'est pas pris en compte.

Voici un script exemple, qui supprime le fichier d'entrée de cron et d'at ainsi que les travaux d'impression en attente ;

#! /bin/sh
# Check for the required argument.
if [ $# != 1 ]; then
        echo "Usage: $0 username"
        exit 1
fi
# Remove cron jobs.
crontab -r -u $1
# Remove at jobs.
# Note that it will remove any jobs owned by the same UID,
# even if it was shared by a different username.
AT_SPOOL_DIR=/var/spool/cron/atjobs
find $AT_SPOOL_DIR -name "[^.]*" -type f -user $1 -delete \;
# Remove print jobs.
lprm $1
# All done.
exit 0
      

USERGROUPS_ENAB (booléen)

Si cette variable est configurée à yes, userdel supprimera le groupe de l'utilisateur s'il ne contient pas d'autres membres, et useradd créera par défaut un groupe portant le nom de l'utilisateur.

FICHIERS

/etc/group

Informations sur les groupes.

/etc/login.defs

Configuration de la suite des mots de passe cachés « shadow password ».

/etc/passwd

Informations sur les comptes des utilisateurs.

/etc/shadow

Informations sécurisées sur les comptes utilisateurs.

/etc/subgid

Per user subordinate group IDs.

/etc/subuid

Per user subordinate user IDs.

VALEURS DE RETOUR

La commande userdel retourne les valeurs suivantes en quittant :

0

succès

1

impossible de mettre à jour le fichier des mots de passe

2

erreur de syntaxe

6

l'utilisateur indiqué n'existe pas

8

l'utilisateur est actuellement connecté

10

impossible de mettre à jour le fichier des groupes

12

impossible de supprimer le répertoire personnel

AVERTISSEMENTS

userdel ne permet pas la suppression d'un compte si des processus actifs lui appartiennent encore. Dans ce cas, il peut être nécessaire de tuer ces processus ou de simplement verrouiller le mot de passe ou le compte de l'utilisateur, afin de supprimer le compte plus tard. L'option -f permet de forcer la suppression du compte.

Vous devez vérifier vous-même qu'aucun fichier possédé par l'utilisateur ne subsiste sur tous les systèmes de fichiers.

Vous ne pouvez supprimer aucun attribut NIS d'un client NIS. Cela doit être effectué sur le serveur NIS.

Si USERGROUPS_ENAB vaut yes (« oui ») dans /etc/login.defs, userdel supprimera le groupe ayant le même nom que l'utilisateur. Afin d'éviter des incohérences entre les fichiers passwd et group, userdel vérifiera que le groupe n'est pas utilisé comme groupe primaire d'un autre utilisateur ; si c'est le cas un avertissement sera affiché et le groupe ne sera pas supprimé. L'option -f permet d'imposer la suppression du groupe.