userdel(8)

НАЗВАНИЕ
userdel - удаляет учётную запись и файлы пользователя

СИНТАКСИС

userdel [параметры] УЧЁТНАЯ_ЗАПИСЬ

ОПИСАНИЕ

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

The userdel command modifies the system account files, deleting all entries that refer to the user name LOGIN. The named user must exist.

ПАРАМЕТРЫ

The options which apply to the userdel command are:

-f, --force
    This option forces the removal of the user account, even if the user is still logged in. It also forces userdel to remove the user's home directory and mail spool, even if another user uses the same home directory or if the mail spool is not owned by the specified user. If USERGROUPS_ENAB is defined to yes in /etc/login.defs and if a group exists with the same name as the deleted user, then this group will be removed, even if it is still the primary group of another user.

    Note: This option is dangerous and may leave your system in an inconsistent state.

-h, --help
    Показать краткую справку и закончить работу.

-r, --remove
    Файлы в домашнем каталоге пользователя будут удалены вместе с самим домашним каталогом и почтовым ящиком. Пользовательские файлы, расположенные в других файловых системах, нужно искать и удалять вручную.

    The mail spool is defined by the MAIL_DIR variable in the login.defs file.

-R, --root CHROOT_DIR
    Apply changes in the CHROOT_DIR directory and use the configuration files from the CHROOT_DIR directory.

-P, --prefix PREFIX_DIR
    Apply changes in the PREFIX_DIR directory and use the configuration files from the PREFIX_DIR directory. This option does not chroot and is intended for preparing a cross-compilation target. Some limitations: NIS and LDAP users/groups are not verified. PAM authentication is using the host files. No SELINUX support.

-Z, --selinux-user
    Удаляет все пользовательские сопоставления SELinux для учётной записи пользователя.

НАСТРОЙКА

The following configuration variables in /etc/login.defs change the behavior of this tool:

MAIL_DIR (string)
    Почтовый каталог. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя. Если параметр не задан, то используется значение указанное при сборке.

MAIL_FILE (string)
    Определяет расположение почтовых файлов пользователя относительно домашнего каталога.

The MAIL_DIR and MAIL_FILE variables are used by useradd, usermod, and userdel to create, move, or delete the user's mail spool.

MAX_MEMBERS_PER_GROUP (number)
    Maximum members per group entry. When the maximum is reached, a new group entry (line) is started in /etc/group (with the same name, same password, and same GID).

    Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет.

    Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп. Это полезно для ограничения длины строк групп NIS в 1024 символа.

    Если вам нужно такое ограничение, укажите значение 25.

    Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow). Вы не должны использовать эту переменную, если вам действительно это ненужно.

USERDEL_CMD (string)
    Определяет программу, которая будет запущена при удалении пользователя. Она должна удалять любые задания at/cron/печати удаляемого пользователя (передаётся в качестве первого аргумента).

    Возвращаемый сценарием код завершения не учитывается.

    Here is an example script, which removes the user's cron, at and print jobs:

        #! /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 (boolean)
    If set to yes, userdel will remove the user's group if it contains no more members, and useradd will create by default a group with the name of the user.

ФАЙЛЫ

/etc/group
    содержит информацию о группах

/etc/login.defs
    содержит конфигурацию подсистемы теневых паролей

/etc/passwd
    содержит информацию о пользователях

/etc/shadow
    содержит защищаемую информацию о пользователях

/etc/subgid
    Per user subordinate group IDs.

/etc/subuid
    Per user subordinate user IDs.

ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ

The userdel command exits with the following values:

0
    success

1
    can't update password file

2
    invalid command syntax

6
    specified user doesn't exist

8
    user currently logged in

10
    can't update group file

12
    can't remove home directory

ПРЕДОСТЕРЕЖЕНИЯ

userdel will not allow you to remove an account if there are running processes which belong to this account. In that case, you may have to kill those processes or lock the user's password or account and remove the account later. The -f option can force the deletion of this account.

Вы должны вручную проверить все файловые системы, чтобы убедиться, что не осталось файлов, принадлежащих этому пользователю.

Нельзя удалить NIS атрибуты клиента NIS. Это необходимо сделать на NIS сервере.

If USERGROUPS_ENAB is defined to yes in /etc/login.defs, userdel will delete the group with the same name as the user. To avoid inconsistencies in the passwd and group databases, userdel will check that this group is not used as a primary group for another user, and will just warn without deleting the group otherwise. The -f option can force the deletion of this group.

СМОТРИТЕ ТАКЖЕ

chfn(1), chsh(1), passwd(1), login.defs(5), gpasswd(8), groupadd(8), groupdel(8), groupmod(8), subgid(5), subuid(5), useradd(8), usermod(8).