Внимание! Прочтите первый абзац!
Думал удалить эту публикацию из-за нерабочего примера. Не понимаю почему linux один а команды бывают разные. Вот и тут была описана команда useradd которая не работает в дистрибутиве linux под raspberry. Зато на англоязычных описаниях и форумах рассказывают про команду adduser. Есть разница ?! И самое интересное в том, что ошибки нет. И пользователь создаётся в система. Проверка пользователя командой id имя_пользователя. Поэтому было принято решение оставить данную статью для ознакомления и если есть знатоки по этой теме прошу вас разъяснить почему произошёл такой случай.
Описание команды adduser можно прочитать в этой статье.
Информация взята с этого сайта.
Основу управления правами доступа в Linux и уровнем привилегий в Linux составляют именно пользователи. Изначально, еще при проектировании системы существовал пользователь root, которому позволено выполнять любые действия и другие пользователи, права которых настраиваются с помощью вступления их в группы Linux и установки прав на каталоги. Многопользовательская архитектура, одна из первых особенностей Linux, которая существует еще с зарождения системы. В системе могут работать одновременно множество пользователей благодаря удаленному входу, а также пользователи используются для запуска определенных сервисов. В этой статье мы рассмотрим как создать пользователя linux, рассмотрим способ через терминал и в графическом интерфейсе.
СОЗДАНИЕ ПОЛЬЗОВАТЕЛЯ В LINUX
Вся информация о пользователях находится в файле /etc/passwd. Мы могли бы создать пользователя linux просто добавив его туда, но так делать не следует, поскольку для этой задачи существуют специальные утилиты. Одна из таких утилит, это useradd. Рассмотрим ее подробнее.
КОМАНДА USERADD
Это довольно простая команда, которая есть во всех дистрибутивах Linux. Она позволяет зарегистрировать нового пользователя или изменить информацию об уже имеющемся. Во время создания можно даже создать домашний каталог пользователя и скопировать в него системные файлы. Рассмотрим синтаксис команды:
$ useradd опции имя_пользователя
Все довольно просто, дальше нам нужно рассмотреть основные опции команды, с помощью которых вы будете настраивать нового пользователя:
- -b – базовый каталог для размещения домашнего каталога пользователя, по умолчанию /home;
- -c – комментарий к учетной записи;
- -d – домашний каталог, в котором будут размещаться файлы пользователя;
- -e – дата, когда учетная запись пользователя будет заблокирована, в формате ГГГГ-ММ-ДД;
- -f – заблокировать учетную запись сразу после создания;
- -g – основная группа пользователя;
- -G – список дополнительных групп;
- -k – каталог с шаблонами конфигурационных файлов;
- -l – не сохранять информацию о входах пользователя в lastlog и faillog;
- -m – создавать домашний каталог пользователя, если он не существует;
- -M – не создавать домашнюю папку;
- -N – не создавать группу с именем пользователя;
- -o – разрешить создание пользователя linux с неуникальным идентификатором UID;
- -p – задать пароль пользователя;
- -r – создать системного пользователя, не имеет оболочки входа, без домашней директории и с идентификатором до SYS_UID_MAX;
- -s – командная оболочка для пользователя;
- -u – идентификатор для пользователя;
- -D – отобразить параметры, которые используются по умолчанию для создания пользователя. Если вместе с этой опцией задать еще какой-либо параметр, то его значение по умолчанию будет переопределено.
Теперь, когда вы знаете основные необходимые нам параметры утилиты мы можем перейти к разбору того, как выполняется создание нового пользователя linux. Сначала давайте посмотрим какие параметры будут применены для пользователя по умолчанию:
1 |
useradd -D |
- Как видите, по умолчанию домашний каталог пользователя будет создан в /home и будет использоваться оболочка /bin/bash. Теперь создадим минимального пользователя с минимальными настройками:
-
1sudo useradd test
Был создан самый простой пользователь, без оболочки и пароля, а также без групп. Теперь немного усложним задачу и создадим пользователя с паролем и оболочкой /bin/sh:
1 |
sudo useradd -p password -s /bin/sh test1 |
Для того чтобы получать доступ к системным ресурсам пользователю нужно быть участником групп, у которых есть доступ к этим ресурсам. Дополнительные группы пользователя задаются с помощью параметра -G. Например, разрешим пользователю читать логи, использовать cdrom и пользоваться sudo:
1 |
sudo useradd -G adm,cdrom,wheel -p password -s /bin/sh test2 |
Также, можно установить дату, когда аккаунт пользователя будет отключен автоматически, это может быть полезно для пользователей, которые будут работать временно:
1 |
sudo useradd -G adm,cdrom,wheel -p password -s /bin/sh -e 01:01:2020 test2 |
Некоторых пользователей интересует создание пользователя с правами root linux, это очень просто делается с помощью useradd, если комбинировать правильные опции. Нам всего лишь нужно разрешить создавать пользователя с не уникальным uid, установить идентификатор в 0 (нуль) и идентификатор основной группы тоже в 0 (нуль). Команда будет выглядеть вот так:
1 |
sudo useradd -o -u 0 -g 0 -s /bin/sh newroot |
Команда usermod
usermod Команда позволяет редактировать настройки пользователя используя те же ключи которые применяются в команде useradd.
1 |
usermod <имя пользователя> [опции] |
Удаление
1 |
userdel <имя пользователя> [опции] |
Блокировка
1 |
usermod -L <имя пользователя> |