Команда useradd
useradd - регистрирует нового пользователя или изменяет информацию по умолчанию о новых пользователях.
ОПИСАНИЕ
При запуске без параметра -D, команда useradd создаёт новую учётную запись пользователя, используя значения из командной строки и системные значения по умолчанию. В зависимости от параметров командной
строки, команда useradd обновляет системные файлы, а также может создать домашний каталог нового пользователя и скопировать файлы настроек.
СИНТАКСИС
useradd [параметры] LOGIN
useradd -D
useradd -D [параметры]
дополнительно :
useradd [-c comment] [-d home_dir]
[-e expire_date] [-f inactive_time]
[-g initial_group] [-G group[,...]]
[-m [-k skeleton_dir] | -M] [-n] [-o] [-p passwd] [-r]
[-s shell] [-u uid] login
useradd -D [-g default_group] [-b default_home]
[-e default_expire_date] [-f default_inactive]
[-s default_shell]
ПАРАМЕТРЫ
Параметры команды useradd:
-c, --comment
КОММЕНТАРИЙ
Любая текстовая строка. Обычно, здесь коротко описывается учётная
запись, и в настоящее время используется как поле для имени и
фамилии пользователя.
-b, --base-dir
БАЗОВЫЙ_КАТАЛОГ
Базовый системный каталог по умолчанию, если другой каталог не
указан с помощью параметра -d. БАЗОВЫЙ_КАТАЛОГ объединяется с
именем учётной записи для определения домашнего каталога. Если не
используется параметр -m, то БАЗОВЫЙ_КАТАЛОГ должен существовать.
-d, --home
ДОМАШНИЙ_КАТАЛОГ
Для создаваемого пользователя будет использован каталог
БАЗОВЫЙ_КАТАЛОГ в качестве начального каталога. По умолчанию, это
значение получается объединением ИМЕНИ пользователя с
БАЗОВЫМ_КАТАЛОГОМ и используется как имя домашнего каталога.
Каталог БАЗОВЫЙ_КАТАЛОГ необязательно должен существовать и не
будет создан, если его нет.
-e, --expiredate
ДАТА_УСТАРЕВАНИЯ
Дата, когда учётная запись пользователя будет заблокирована. Дата
задаётся в формате ГГГГ-ММ-ДД.
-f, --inactive
ДНЕЙ
Число дней, которые должны пройти после устаревания пароля, чтобы
учётная запись заблокировалась навсегда. Если указано значение 0,
то учётная запись блокируется сразу после устаревания пароля, а при
значении -1 данная возможность не используется. По умолчанию
используется значение -1.
-g, --gid
ГРУППА
Имя или числовой идентификатор новой начальной группы пользователя. Группа с таким именем должна существовать. Идентификатор группы должен указывать на уже существующую группу. Идентификатор группы по
умолчанию равен 1 или значению указанному в файле /etc/default/useradd.
-G, --groups
ГРУППА1[,ГРУППА2,...[,ГРУППАN]]]
Список дополнительных групп, в которых числится пользователь.
Перечисление групп осуществляется через запятую, без промежуточных
пробелов. На указанные группы действуют те же ограничения, что и
для группы указанной в параметре -g. По умолчанию пользователь
входит только в начальную группу.
-h, --help
Показать краткую справку и закончить работу.
-m, --create-home
Если домашнего каталога пользователя не существует, то он будет создан. Файлы из каталога КАТАЛОГ_ШАБЛОН будут скопированы в домашний каталог, если он указан параметр -k, иначе будут использованы файлы
из каталога /etc/skel. Все подкаталоги каталога КАТАЛОГ_ШАБЛОН или /etc/skel будут также созданы в домашнем каталоге пользователя. Параметр -k можно использовать только вместе с параметром -m. По
умолчанию, домашний каталог не создаётся и файлы не копируются.
-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
Замечание: запись вида -K UID_MIN=10,UID_MAX=499 пока не работает.
-o, --non-unique
Позволяет создать учётную запись с уже имеющимся (не уникальным)
UID.
-p, --password
ПАРОЛЬ
Шифрованное значение пароля, которое возвращает функция
.
По умолчанию учётная запись заблокирована.
-s, --shell
ОБОЛОЧКА
Имя регистрационной оболочки пользователя. Если задать пустое
значение, то будет использована регистрационная оболочка по
умолчанию.
-u, --uidUID
Числовое значение идентификатора пользователя (ID). Оно должно быть
уникальным, если не используется параметр -o. Значение должно быть
неотрицательным. По умолчанию используется наименьшее значение ID
большее 999 и большее любого другого значения пользователя.
Значения от 0 до 999 обычно зарезервированы для системных учётных
записей.
Изменение значений по умолчанию
При запуске программы с параметром -D команда useradd показывает текущие значения по умолчанию или изменяет их, если указаны дополнительные параметры в командной строке.
Допустимые параметры:
-b, --base-dir
БАЗОВЫЙ_КАТАЛОГ
Начальная часть пути нового домашнего каталога пользователя. Имя
пользователя будет добавлено в конец ДОМАШНЕГО_КАТАЛОГА для
создания имени нового каталога, если не задан параметр -d при
создании новой учётной записи.
-e, --expiredate
ДАТА_УСТАРЕВАНИЯ
Дата, когда учётная запись пользователя заблокирована.
-f, --inactive
ДНЕЙ
Число дней, которые должны пройти после устаревания пароля, перед
тем как учётная запись будет заблокирована.
-g, --gid
ГРУППА
Имя или числовой идентификатор новой начальной группы пользователя.
Группа с таким именем должна существовать и для числового
идентификатора должна быть запись.
-s, --shell
ОБОЛОЧКА
Имя новой регистрационной оболочки пользователя. Данная программа
будет использована для всех новых пользовательских учётных записей.
Если программа запущена без параметров, useradd покажет текущие
значения по умолчанию.
ЗАМЕЧАНИЯ
Системный администратор сам решает, какие файлы нужно положить в каталог /etc/skel/.
ПРЕДОСТЕРЕЖЕНИЯ
Нельзя добавить пользователя в NIS группу. Это необходимо делать на NIS сервере.
Также, если имя пользователя уже существует во внешней базе данных такой как NIS, то useradd не станет создавать учётную запись пользователя.
Имена пользователей должны начинаться со строчной буквы или символа подчёркивания, и должны состоять только из строчных букв, символов подчёркивания, тире и знака доллара. Это можно описать регулярным
выражением: [a-z_][a-z0-9_-]*[$]
ФАЙЛЫ
/etc/passwd
содержит информацию о пользователях
/etc/shadow
содержит защищаемую информацию о пользователях
/etc/group
содержит информацию о группах
/etc/default/useradd
содержит защищаемую информацию о пользователях
/etc/skel/
каталог, содержащий пользовательские файлы по умолчанию
/etc/login.defs
содержит конфигурацию подсистемы теневых паролей
ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Команда useradd завершая работу, возвращает следующие значения:
0
успешное выполнение
1
не удалось изменить файл паролей
2
ошибка в параметрах команды
3
недопустимое значение параметра
4
такой UID уже существует (и не задан параметр -o)
6
указанная группа не существует
9
имя пользователя уже существует
10
не удалось изменить файл групп
12
не удалось создать домашний каталог
13
не удалось создать почтовый ящик
Примеры использования:
Добавить пользователя
# useradd user1
Добавить пользователя c созданием домашней директории
# useradd -m user1
Добавить пользователя с указанием id
EN-US" lang="EN-US"># groupadd -g 1005 user1
EN-US" lang="EN-US"># useradd --uid 1005 --gid 1005 -m user1
# useradd -u 10001 testuserl
По этой команде создается учетная запись пользователя testuserl с идентификационным номером 10001.
Что нужно сделать, чтобы добавить нового пользователя в определенную группу? Как добавить нового пользователя в группу (например, users) а не создавать для него отдельную группу? Для этого существует флажок -g.
# useradd -g users testuserl
Предположим, пользователь testuserl должен быть включен не только в группу users. но и в группы groupl и group2. Надо при создании учетной записи указать в команде useradd флажок -G.
# useradd -g users -G groupl,group2 testuserl
Наконец, чтобы определить пользователю другой исходный каталог, укажите в команде флажок -d.
# useradd -d /other/home/directory testuserl
Чтобы добавить пользователя user в уже существующую группу group прописываем:
# useradd -G group user
Этой командой пользователя можно добавить сразу в несколько групп. Для этого имена групп перечисляем через запятую.
Для добавления пользователя в новую группу, с именем отличным от имени пользователя, выполняем следующее:
# useradd -g groupname user
Эта группа для пользователя будет являться основной.
Заметка:
Создание пользователей посредством редактирования /etc/passwd
Вы также можете создать нового пользователя, отредактировав файл /etc/passwd. Однако это опасная процедура, и она должна использоваться только в том случае, если вы не можете использовать никакой другой метод, например, если вы производите восстановление после сбоя или отказа аппаратной части и на вашем аварийном носителе отсутствуют другие утилиты.
Каждому пользователю соответствует отдельная строка в /etc/passwd. Эта строка разделена двоеточиями на семь полей и имеет следующий формат:
имя; пароль; номер пользователя; номер группы; комментарий; домашний каталог;
интерпретатор командной строки.
Если в вашей системе используется файл /etc/shadow, то в поле пароль в /etc/passwd будет находиться символ х, а зашифрованные пароли будут храниться в /etc/shadow.
После того как вы добавите пользователя, создайте для него домашний каталог и скопируйте в него файлы настройки по умолчанию из каталога /etc/skel. Затем смените владельца и режим доступа к новому каталогу. Наконец, при помощи команды passwd задайте пароль для нового пользователя.
useradd - регистрирует нового пользователя или изменяет информацию по умолчанию о новых пользователях.
ОПИСАНИЕ
При запуске без параметра -D, команда useradd создаёт новую учётную запись пользователя, используя значения из командной строки и системные значения по умолчанию. В зависимости от параметров командной
строки, команда useradd обновляет системные файлы, а также может создать домашний каталог нового пользователя и скопировать файлы настроек.
СИНТАКСИС
useradd [параметры] LOGIN
useradd -D
useradd -D [параметры]
дополнительно :
useradd [-c comment] [-d home_dir]
[-e expire_date] [-f inactive_time]
[-g initial_group] [-G group[,...]]
[-m [-k skeleton_dir] | -M] [-n] [-o] [-p passwd] [-r]
[-s shell] [-u uid] login
useradd -D [-g default_group] [-b default_home]
[-e default_expire_date] [-f default_inactive]
[-s default_shell]
ПАРАМЕТРЫ
Параметры команды useradd:
-c, --comment
КОММЕНТАРИЙ
Любая текстовая строка. Обычно, здесь коротко описывается учётная
запись, и в настоящее время используется как поле для имени и
фамилии пользователя.
-b, --base-dir
БАЗОВЫЙ_КАТАЛОГ
Базовый системный каталог по умолчанию, если другой каталог не
указан с помощью параметра -d. БАЗОВЫЙ_КАТАЛОГ объединяется с
именем учётной записи для определения домашнего каталога. Если не
используется параметр -m, то БАЗОВЫЙ_КАТАЛОГ должен существовать.
-d, --home
ДОМАШНИЙ_КАТАЛОГ
Для создаваемого пользователя будет использован каталог
БАЗОВЫЙ_КАТАЛОГ в качестве начального каталога. По умолчанию, это
значение получается объединением ИМЕНИ пользователя с
БАЗОВЫМ_КАТАЛОГОМ и используется как имя домашнего каталога.
Каталог БАЗОВЫЙ_КАТАЛОГ необязательно должен существовать и не
будет создан, если его нет.
-e, --expiredate
ДАТА_УСТАРЕВАНИЯ
Дата, когда учётная запись пользователя будет заблокирована. Дата
задаётся в формате ГГГГ-ММ-ДД.
-f, --inactive
ДНЕЙ
Число дней, которые должны пройти после устаревания пароля, чтобы
учётная запись заблокировалась навсегда. Если указано значение 0,
то учётная запись блокируется сразу после устаревания пароля, а при
значении -1 данная возможность не используется. По умолчанию
используется значение -1.
-g, --gid
ГРУППА
Имя или числовой идентификатор новой начальной группы пользователя. Группа с таким именем должна существовать. Идентификатор группы должен указывать на уже существующую группу. Идентификатор группы по
умолчанию равен 1 или значению указанному в файле /etc/default/useradd.
-G, --groups
ГРУППА1[,ГРУППА2,...[,ГРУППАN]]]
Список дополнительных групп, в которых числится пользователь.
Перечисление групп осуществляется через запятую, без промежуточных
пробелов. На указанные группы действуют те же ограничения, что и
для группы указанной в параметре -g. По умолчанию пользователь
входит только в начальную группу.
-h, --help
Показать краткую справку и закончить работу.
-m, --create-home
Если домашнего каталога пользователя не существует, то он будет создан. Файлы из каталога КАТАЛОГ_ШАБЛОН будут скопированы в домашний каталог, если он указан параметр -k, иначе будут использованы файлы
из каталога /etc/skel. Все подкаталоги каталога КАТАЛОГ_ШАБЛОН или /etc/skel будут также созданы в домашнем каталоге пользователя. Параметр -k можно использовать только вместе с параметром -m. По
умолчанию, домашний каталог не создаётся и файлы не копируются.
-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
Замечание: запись вида -K UID_MIN=10,UID_MAX=499 пока не работает.
-o, --non-unique
Позволяет создать учётную запись с уже имеющимся (не уникальным)
UID.
-p, --password
ПАРОЛЬ
Шифрованное значение пароля, которое возвращает функция
У вас нет прав на просмотр ссылок, пожалуйста: Вход или Регистрация
По умолчанию учётная запись заблокирована.
-s, --shell
ОБОЛОЧКА
Имя регистрационной оболочки пользователя. Если задать пустое
значение, то будет использована регистрационная оболочка по
умолчанию.
-u, --uidUID
Числовое значение идентификатора пользователя (ID). Оно должно быть
уникальным, если не используется параметр -o. Значение должно быть
неотрицательным. По умолчанию используется наименьшее значение ID
большее 999 и большее любого другого значения пользователя.
Значения от 0 до 999 обычно зарезервированы для системных учётных
записей.
Изменение значений по умолчанию
При запуске программы с параметром -D команда useradd показывает текущие значения по умолчанию или изменяет их, если указаны дополнительные параметры в командной строке.
Допустимые параметры:
-b, --base-dir
БАЗОВЫЙ_КАТАЛОГ
Начальная часть пути нового домашнего каталога пользователя. Имя
пользователя будет добавлено в конец ДОМАШНЕГО_КАТАЛОГА для
создания имени нового каталога, если не задан параметр -d при
создании новой учётной записи.
-e, --expiredate
ДАТА_УСТАРЕВАНИЯ
Дата, когда учётная запись пользователя заблокирована.
-f, --inactive
ДНЕЙ
Число дней, которые должны пройти после устаревания пароля, перед
тем как учётная запись будет заблокирована.
-g, --gid
ГРУППА
Имя или числовой идентификатор новой начальной группы пользователя.
Группа с таким именем должна существовать и для числового
идентификатора должна быть запись.
-s, --shell
ОБОЛОЧКА
Имя новой регистрационной оболочки пользователя. Данная программа
будет использована для всех новых пользовательских учётных записей.
Если программа запущена без параметров, useradd покажет текущие
значения по умолчанию.
ЗАМЕЧАНИЯ
Системный администратор сам решает, какие файлы нужно положить в каталог /etc/skel/.
ПРЕДОСТЕРЕЖЕНИЯ
Нельзя добавить пользователя в NIS группу. Это необходимо делать на NIS сервере.
Также, если имя пользователя уже существует во внешней базе данных такой как NIS, то useradd не станет создавать учётную запись пользователя.
Имена пользователей должны начинаться со строчной буквы или символа подчёркивания, и должны состоять только из строчных букв, символов подчёркивания, тире и знака доллара. Это можно описать регулярным
выражением: [a-z_][a-z0-9_-]*[$]
ФАЙЛЫ
/etc/passwd
содержит информацию о пользователях
/etc/shadow
содержит защищаемую информацию о пользователях
/etc/group
содержит информацию о группах
/etc/default/useradd
содержит защищаемую информацию о пользователях
/etc/skel/
каталог, содержащий пользовательские файлы по умолчанию
/etc/login.defs
содержит конфигурацию подсистемы теневых паролей
ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Команда useradd завершая работу, возвращает следующие значения:
0
успешное выполнение
1
не удалось изменить файл паролей
2
ошибка в параметрах команды
3
недопустимое значение параметра
4
такой UID уже существует (и не задан параметр -o)
6
указанная группа не существует
9
имя пользователя уже существует
10
не удалось изменить файл групп
12
не удалось создать домашний каталог
13
не удалось создать почтовый ящик
Примеры использования:
Добавить пользователя
# useradd user1
Добавить пользователя c созданием домашней директории
# useradd -m user1
Добавить пользователя с указанием id
EN-US" lang="EN-US"># groupadd -g 1005 user1
EN-US" lang="EN-US"># useradd --uid 1005 --gid 1005 -m user1
# useradd -u 10001 testuserl
По этой команде создается учетная запись пользователя testuserl с идентификационным номером 10001.
Что нужно сделать, чтобы добавить нового пользователя в определенную группу? Как добавить нового пользователя в группу (например, users) а не создавать для него отдельную группу? Для этого существует флажок -g.
# useradd -g users testuserl
Предположим, пользователь testuserl должен быть включен не только в группу users. но и в группы groupl и group2. Надо при создании учетной записи указать в команде useradd флажок -G.
# useradd -g users -G groupl,group2 testuserl
Наконец, чтобы определить пользователю другой исходный каталог, укажите в команде флажок -d.
# useradd -d /other/home/directory testuserl
Чтобы добавить пользователя user в уже существующую группу group прописываем:
# useradd -G group user
Этой командой пользователя можно добавить сразу в несколько групп. Для этого имена групп перечисляем через запятую.
Для добавления пользователя в новую группу, с именем отличным от имени пользователя, выполняем следующее:
# useradd -g groupname user
Эта группа для пользователя будет являться основной.
Заметка:
Создание пользователей посредством редактирования /etc/passwd
Вы также можете создать нового пользователя, отредактировав файл /etc/passwd. Однако это опасная процедура, и она должна использоваться только в том случае, если вы не можете использовать никакой другой метод, например, если вы производите восстановление после сбоя или отказа аппаратной части и на вашем аварийном носителе отсутствуют другие утилиты.
Каждому пользователю соответствует отдельная строка в /etc/passwd. Эта строка разделена двоеточиями на семь полей и имеет следующий формат:
имя; пароль; номер пользователя; номер группы; комментарий; домашний каталог;
интерпретатор командной строки.
Если в вашей системе используется файл /etc/shadow, то в поле пароль в /etc/passwd будет находиться символ х, а зашифрованные пароли будут храниться в /etc/shadow.
После того как вы добавите пользователя, создайте для него домашний каталог и скопируйте в него файлы настройки по умолчанию из каталога /etc/skel. Затем смените владельца и режим доступа к новому каталогу. Наконец, при помощи команды passwd задайте пароль для нового пользователя.