useradd(8)

ИМЯ
useradd - регистрирует нового пользователя или изменяет информацию по умолчанию о новых пользователях

СИНОПСИС

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

useradd -D

useradd -D [параметры]

ОПИСАНИЕ

При запуске без параметра -D команда useradd создаёт новую учётную запись пользователя, используя значения из командной строки и системные значения по умолчанию. В зависимости от параметров командной строки, команда useradd обновляет системные файлы, а также может создать домашний каталог нового пользователя и скопировать начальные файлы настроек.

По умолчанию, для нового пользователя также создаётся группа (смотрите параметры -g, -N, -U и USERGROUPS_ENAB).

ПАРАМЕТРЫ

Параметры команды useradd:

-b, --base-dir БАЗОВЫЙ_КАТАЛОГ
    The default base directory for the system if -dHOME_DIR is not specified. BASE_DIR is concatenated with the account name to define the home directory. The BASE_DIR must exist otherwise the home directory cannot be created.

    Если этот параметр не задан, то команда useradd будет использовать базовый каталог, указанный в переменной HOME в файле /etc/default/useradd иначе /home (по умолчанию).

-c, --comment КОММЕНТАРИЙ
    Любая текстовая строка. Обычно, здесь коротко описывается учётная запись, и в настоящее время используется как поле для имени и фамилии пользователя.

-d, --home-dir HOME_DIR
    The new user will be created using HOME_DIR as the value for the user's login directory. The default is to append the LOGIN name to BASE_DIR and use that as the login directory name.

-D, --defaults
    Смотрите далее в подразделе «Изменение значений по умолчанию».

-e, --expiredate ДАТА_УСТАРЕВАНИЯ
    Дата, когда учётная запись пользователя будет заблокирована. Дата задаётся в формате ГГГГ-ММ-ДД.

    Если этот параметр не задан, то команда useradd будет использовать дату устаревания по умолчанию, указанную в переменной EXPIRE в файле /etc/default/useradd, иначе пустую строку (без устаревания, по умолчанию).

-f, --inactive ДНЕЙ
    Если указано значение 0, то учётная запись блокируется сразу после устаревания пароля, а при значении -1 данная возможность не используется.

    Если этот параметр не задан, то команда useradd будет использовать срок неактивности по умолчанию, указанный в переменной INACTIVE в файле /etc/default/useradd или -1 (по умолчанию).

-g, --gid ГРУППА
    Имя или числовой идентификатор первичной группы пользователя. Группа с таким именем должна существовать. Идентификатор группы должен указывать на уже существующую группу.

    Если не указан, то поведение useradd зависит от переменной USERGROUPS_ENAB в файле /etc/login.defs. Если значение этой переменной равно yes (или в командной строке указан параметр -U/--user-group), то для пользователя будет создана группа с тем же именем как его имя для входа. Если значение переменной равно no (или в командной строке указан параметр -N/--no-user-group), то useradd установит первичную группу нового пользователя равной значению переменной GROUP из файла /etc/default/useradd, или 100 (по умолчанию).

-G, --groups ГРУППА1[,ГРУППА2,...[,ГРУППАN]]]
    Список дополнительных групп, в которых числится пользователь. Перечисление групп осуществляется через запятую, без промежуточных пробелов. На указанные группы действуют те же ограничения, что и для группы указанной в параметре -g. По умолчанию пользователь входит только в начальную группу.

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

-k, --skel КАТАЛОГ_ШАБЛОНОВ
    Каталог с шаблонами, который содержит файлы и каталоги для копирования в домашний каталог пользователя при создании домашнего каталога командой useradd.

    Этот параметр можно использовать только с параметром -m (или --create-home).

    Если этот параметр не задан, то каталог шаблонов определяется переменной SKEL из файла /etc/default/useradd, или равен /etc/skel (по умолчанию).

    Если возможно, выполняется копирование ACL и расширенных атрибутов.

-K, --key КЛЮЧ=ЗНАЧЕНИЕ
    Заменяет значения по умолчанию из файла /etc/login.defs (UID_MIN, UID_MAX, UMASK, PASS_MAX_DAYS и других). Пример: -K PASS_MAX_DAYS=-1 можно использовать при создании системной учётной записи, чтобы выключить устаревание пароля, даже если системная учётная запись вообще не имеет пароля. Можно указывать параметр -K несколько раз, например: -K UID_MIN=100 -K UID_MAX=499

-l, --no-log-init
    Не добавлять пользователя в базы данных lastlog и faillog.

    По умолчанию, записи пользователя в базах данных lastlog и faillog сбрасываются во избежание повторного использования записи, оставшейся от ранее удалённого пользователя.

-m, --create-home
    Создать домашний каталог пользователя, если он не существует. Файлы и каталоги, содержащиеся в каталоге шаблонов (который можно указать с помощью параметра the -k option), будут скопированы в домашний каталог.

    По умолчанию, если этот параметр не указан и не задана переменная CREATE_HOME, домашний каталог не создаётся.

    The directory where the user's home directory is created must exist and have proper SELinux context and permissions. Otherwise the user's home directory cannot be created or accessed.

-M, --no-create-home
    Do not create the user's home directory, even if the system wide setting from /etc/login.defs (CREATE_HOME) is set to yes.

-N, --no-user-group
    Не создавать группу с тем же именем как у пользователя, но добавить пользователя в группу, заданную параметром -g или переменной GROUP из файла /etc/default/useradd.

    Поведение по умолчанию (если не указан параметр -g, -N и -U) определяется переменной USERGROUPS_ENAB из файла /etc/login.defs.

-o, --non-unique
    Разрешить создание учётной записи с уже имеющимся (не уникальным) UID.

    Этот параметр можно использовать только с параметром -u.

-p, --password ПАРОЛЬ
    Шифрованное значение пароля, которое возвращает функция crypt(3). По умолчанию пароль отключён.

    Замечание: Этот параметр использовать не рекомендуется, так как пароль (или не шифрованный пароль) будет видим другими пользователям в списке процессов.

    Вы должны проверить, что пароль соответствует политике системных паролей.

-r, --system
    Создать системную учётную запись.

    Системные пользователи создаются без информации об устаревании в /etc/shadow, и их числовые идентификаторы выбираются из диапазона SYS_UID_MIN-SYS_UID_MAX, определённого в /etc/login.defs, а не из UID_MIN-UID_MAX (это же касается и части с GID при создании групп).

    Заметим, что useradd не создаёт домашний каталог для данного пользователя независимо от значения по умолчанию в /etc/login.defs (CREATE_HOME). Если вы хотите создать домашний каталог для системной учётной записи укажите параметр -m.

-R, --root КАТ_CHROOT
    Выполнить изменения в каталоге КАТ_CHROOT и использовать файлы настройки из каталога КАТ_CHROOT.

-s, --shell ОБОЛОЧКА
    Имя регистрационной оболочки пользователя. По умолчанию это поле пусто, что вызывает выбор регистрационной оболочки по умолчанию согласно значению переменной SHELL из файла /etc/default/useradd, или по умолчанию используется пустая строка.

-u, --uid UID
    Числовое значение идентификатора пользователя (ID). Оно должно быть уникальным, если не используется параметр -o. Значение должно быть неотрицательным. По умолчанию используется наименьшее значение ID большее или равное UID_MIN и большее чем у остальных пользователей.

    Смотрите также описание -r и UID_MAX.

-U, --user-group
    Создать группу с тем же именем что и у пользователя, и добавить пользователя в эту группу.

    Поведение по умолчанию (если не указан параметр -g, -N и -U) определяется переменной USERGROUPS_ENAB из файла /etc/login.defs.

-Z, --selinux-user SEUSER
    Пользователь SELinux для регистрационной оболочки пользователя. По умолчанию это поле пусто, что заставляет систему выбрать пользователя SELinux по умолчанию.

  Изменение значений по умолчанию

При запуске программы только с параметром -D команда useradd показывает текущие значения по умолчанию. Если программа запускается с параметром -D вместе с другими параметрами, то useradd обновляет значения по умолчанию этих указанных параметров. Изменяемые параметры:

-b, --base-dir БАЗОВЫЙ_КАТАЛОГ
    Начальная часть пути нового домашнего каталога пользователя. Имя пользователя будет добавлено в конец ДОМАШНЕГО_КАТАЛОГА для создания имени нового каталога, если при создании новой учётной записи не указан параметр -d.

    Этот параметр изменяет переменную HOME в файле /etc/default/useradd.

-e, --expiredate ДАТА_УСТАРЕВАНИЯ
    Дата, когда учётная запись пользователя заблокирована.

    Этот параметр изменяет переменную EXPIRE в файле /etc/default/useradd.

-f, --inactive ДНЕЙ
    Число дней, которые должны пройти после устаревания пароля, перед тем как учётная запись будет заблокирована.

    Этот параметр изменяет переменную INACTIVE в файле /etc/default/useradd.

-g, --gid ГРУППА
    Имя группы или ID новой первичной группы пользователя (если используется -N/--no-user-group или когда значение переменной USERGROUPS_ENAB равно no (файл /etc/login.defs). Группа с указанным именем должна существовать, а для числового идентификатора группы должна быть соответствующая запись.

    Этот параметр изменяет переменную GROUP в файле /etc/default/useradd.

-s, --shell ОБОЛОЧКА
    Имя новой регистрационной командной оболочки пользователя.

    Этот параметр изменяет переменную SHELL в файле /etc/default/useradd.

ЗАМЕЧАНИЯ

Системный администратор сам решает, какие файлы нужно положить в каталог /etc/skel/ (или в любой другой каталог шаблонов, указанный в /etc/default/useradd или в командной строке).

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

Нельзя добавить пользователя в группу NIS или LDAP. Это необходимо делать на соответствующем сервере.

Также, если имя пользователя уже существует во внешней базе данных такой как NIS или LDAP, то useradd не станет создавать учётную запись пользователя.

Имена пользователей могут быть длиной не более 32 знаков.

НАСТРОЙКА

На работу этого инструмента влияют следующие переменные настройки из /etc/login.defs:

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

    Эта переменная не влияет на системных пользователей и может быть переопределена из командной строки.

GID_MAX (число), GID_MIN (число)
    Диапазон идентификаторов групп, используемый в программах useradd, groupadd или newusers для создания обычных групп.

    Значение по умолчанию для GID_MIN (соотв. GID_MAX) равно 1000 (соотв. 60000).

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

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

Переменные MAIL_DIR и MAIL_FILE используются командами useradd, usermod и userdel для создания, перемещения или удаления почты пользователя.

Если значение MAIL_CHECK_ENAB равно yes, то они также используются для определения переменной окружения MAIL.

MAX_MEMBERS_PER_GROUP (число)
    Максимальное количество членов в записи о группе. При достижения максимума заводится новая запись группы (строка) в /etc/group (с тем же именем, паролем и тем же GID).

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

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

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

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

PASS_MAX_DAYS (число)
    Максимальное число дней использования пароля. Если пароль старее этого числа, то будет запущена процедура смены пароля. Если значение не задано, то предполагается значение -1 (то есть возможность ограничения не используется).

PASS_MIN_DAYS (число)
    Максимальное число дней между изменениями пароля. Любая смена пароля ранее заданного срока выполнена не будет. Если значение не задано, то предполагается значение -1 (то есть возможность ограничения не используется).

PASS_WARN_AGE (число)
    Число дней за которое начнёт выдаваться предупреждение об устаревании пароля. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет. Если значение не задано, выдача предупреждения отключается.

SYS_GID_MAX (число), SYS_GID_MIN (число)
    Диапазон идентификаторов групп, используемый в программах useradd, groupadd или newusers для создания системных групп.

    Значение по умолчанию для SYS_GID_MIN (соотв.SYS_GID_MAX) равно 101 (соотв. GID_MIN-1).

SYS_UID_MAX (число), SYS_UID_MIN (число)
    Диапазон идентификаторов пользователей, используемый в программах useradd или newusers для создания системных пользователей.

    Значение по умолчанию для SYS_UID_MIN (соотв. SYS_UID_MAX) равно 101 (соотв. UID_MIN-1).

UID_MAX (число), UID_MIN (число)
    Диапазон идентификаторов пользователей, используемый в программах useradd или newusers для создания обычных пользователей.

    Значение по умолчанию для UID_MIN (соотв. UID_MAX) равно 1000 (соотв. 60000).

UMASK (число)
    Задаёт начальное значение маски доступа для создаваемых файлов. Если не указано, то маска устанавливается в 022.

    Команды useradd и newusers используют эту маску для установки прав доступа к домашнему каталогу, который они создают.

    Также она используется программой login для задания начального значения umask пользователя. Заметим, что эта маска может быть переопределена из пользовательской строки GECOS (если установлена переменная QUOTAS_ENAB) или указанием ограничения с идентификатором K, в limits(5).

USERGROUPS_ENAB (логический)
    Включает установку группы битов umask равной битам владельца (пример: 022 -> 002, 077 -> 007) для не суперпользователей, если uid равен gid и имя пользователя совпадает с именем первичной группы.

    Если значение равно yes, то userdel удаляет пользовательскую группу, если в ней нет больше членов, а useradd по умолчанию создаёт группу с именем пользователя.

ФАЙЛЫ

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

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

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

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

/etc/default/useradd
    значения по умолчанию для создаваемой учётной записи

/etc/skel/
    каталог, содержащий файлы по умолчанию

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

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

Команда useradd завершая работу, возвращает следующие значения:

0
    успешное выполнение

1
    не удалось изменить файл паролей

2
    ошибка в параметрах команды

3
    недопустимое значение параметра

4
    такой UID уже существует (и не задан параметр -o)

6
    указанная группа не существует

9
    имя пользователя уже существует

10
    не удалось изменить файл групп

12
    не удалось создать домашний каталог

14
    can't update SELinux user mapping

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

chfn(1), chsh(1), passwd(1), crypt(3), groupadd(8), groupdel(8), groupmod(8), login.defs(5), newusers(8), userdel(8), usermod(8).