как создать домашнюю директорию пользователя linux

Создать домашний каталог для существующего пользователя в Linux

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

Позвольте мне показать вам пример, чтобы объяснить, как создать домашний каталог для существующего пользователя с помощью mkhomedir_helper.

Во-первых, давайте создадим нового пользователя с именем ostechnix, используя команду useradd :

Установите пароль для пользователя:

Теперь переключитесь на нового пользователя:

Вы увидите следующее сообщение об ошибке:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

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

Давайте проверим это, заглянув в /homeкаталог:

Что ж, это правда, что у пользователя ostechnix нет домашнего каталога.

Для этого сначала выйдите из системы пользователя ostechnix, если вы уже вошли в систему:

И выполните следующую команду, чтобы создать домашний каталог для пользователя с именем ostechnix :

Обратите внимание, что вы должны выполнить указанную выше команду как root пользователь или другой sudo пользователь.

Теперь переключитесь на пользователя ostechnix:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

Для получения дополнительных сведений см. справочные страницы:

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

Источник

Все мы знаем об очень популярных в мире Linux командах «useradd» и «adduser». Время от времени администраторы системы используют их для создания пользовательских профилей с какими-либо специфическими свойствами или ограничениями.

Версии команды useradd в некоторых дистрибутивах Linux могут иметь небольшие отличия. Я полагаю, что вы прочитаете документацию своего дистрибутива, перед тем, как начнете экспериментировать.

Когда мы в терминале запускаем команду useradd, происходит следующее:

1. Она редактирует файлы /etc/passwd, /etc/shadow, /etc/group и/etc/gshadow, внося в них нового пользователя.
2. Создается и заполняется домашняя директория для нового пользователя.
3. Устанавливаются права доступа и владелец домашней директории.

Базовый синтаксис команды:

В этой статье мы покажем 15 наиболее часто встречающихся примеров использования команды useradd в Linux. Мы разделим наше повествование на две части:

Часть I: основы с 10 примерами;
Часть II: продвинутые возможности с 5 примерами.

1. Как добавить нового пользователя в Linux

Например, добавляем пользователя «techmint»:

После выполнения данной команды, новый пользователь будет создан в заблокированном состоянии. Чтобы разблокировать пользовательский аккаунт, необходимо задать его пароль с помощью команды «passwd».

После создания нового пользователя его запись автоматически добавляется в пароль «/etc/passwd» и имеет следующий вид:

Она состоит из семи разделенных двоеточием полей, каждое из которых имеет свое назначение:

2. Создание пользователя с нестандартным размещением домашней директории

По умолчанию команда «useradd» создает домашнюю директорию пользователя в /home и называет ее именем пользователя. Поэтому, например, для приведенного выше примера, мы увидим домашнюю директорию созданного нами пользователя «tecmint» в «/home/tecmint».
Однако это действие можно изменить с помощью опции «-d», указав после нее расположение новой домашней директории. Например, приведенная ниже команда создаст пользователя «anusha» с домашней директорией «/data/projects».

Вы можете просмотреть расположение домашней директории пользователя, а также другую информацию о нем:

3. Создание пользователя с заданным User ID

В Linux каждый пользователь имеет свой собственный UID (Unique Identification Number). По умолчанию при создании нового пользователя ему присваивается userid 500, 501, 502 и т.д.
Но мы можем создать пользователя с заданным userid с помощью опции «-u». Например, приведенная ниже команда создает пользователя «navin» с userid «999».

Теперь мы можем проверить, что пользователь создан действительно с этим идентификатором.

Замечание: Обратите внимание, что user ID должен отличаться от user ID пользователей, уже существующих в системе.

4. Создание пользователя с заданным Group ID

В этом примере мы добавим пользователя «tarunika» с заданными UID и GID:

Проверим, правильно ли сработала команда:

5. Добавление пользователя в несколько групп

Опция «-G» используется для добавления пользователя в дополнительные группы. Названия групп разделяются запятой без пробелов.
В приведенном ниже примере мы добавляем пользователя «tecmint» в группы admins, webadmin и developer.

Теперь проверим, в каких группах числится пользователь, с помощью команды id.

6. Добавление пользователя без домашней директории

В некоторых ситуациях мы не хотим, по соображениям безопасности, давать пользователям домашние директории. В таком случае, когда пользователь авторизуется в системе сразу после ее запуска, его домашней директорией будет root. Если такой пользователь использует команду su, то он авторизуется в домашней директории предыдущего пользователя.
Для создания пользователя без домашней директории используется опция «-M». Например, создадим пользователя «shilpi» без домашней директории.

Давайте проверим, что пользователь создан без домашней директории, с помощью команды ls:

7. Добавление пользовательского аккаунта с ограниченным сроком действия

По умолчанию, когда мы добавляем пользователя с помощью команды «useradd», его аккаунт не имеет сроков действия, то есть дата истечения сроков его жизни установена в 0 (никогда не истекает).
Однако мы можем установить дату истечения с помощью опции «-e», задав дату в формате YYYY-MM-DD. Это полезно при создании временных аккаунтов для каких-то конкретных задач.
В приведенном ниже примере мы создаем пользователя «aparna» со сроком жизни его аккаунта до 27 апреля 2015 года в формате YYYY-MM-DD.

Далее, проверяем сроки действия аккаунта и пароля с помощью команды «chage».

8. Создание пользователя с ограниченным временем действия пароля

9. Добавление различных комментариев к учетной записи

Опция «-c» позволяет вам добавлять произвольные комментарии, такие как полное имя пользователя или его номер телефона, в файл /etc/passwd. Например, следующая команда добавляет пользователя «mansi» и вставляет в поле комментария его полное имя Manis Khurana.

Вы можете просмотреть комментарии в файле ‘/etc/passwd’ с помощью команды:

10. Смена командной оболочки пользователя

Иногда мы добавляем пользователей, которые никогда не работают с командными оболочкми, или могут использовать другие командные оболочки. Мы можем задать отдельную оболочку для любого пользователя с помощью опции «-s».
В примере мы добавляем пользователя «tecmint» без командной оболочки, то есть задаем оболочку «/sbin/nologin».

Вы можете проверить командную оболочку пользователя с помощью команды:

Часть II: продвинутые возможности команды useradd

11. Добавление пользователя с заданными домашней директорией, командной оболочкой и комментариями

Приведенная ниже команда создает пользователя «ravi» с домашней директорией «/var/www/tecmint», командной оболочкой «/bin/bash» и дополнительной информацией о пользователе.

12. Добавление пользователя с заданными домашней директорией, командной оболочкой, комментариями и UID/GID.

Эта команда очень похожа на предыдущую, но здесь мы определяем оболочку как «/bin/zsh», и задаем UID и GID для пользователя «tarunika». Здесь «-u» задает новый UID пользователя (т.е. 1000), а «-g» задает GID (т.е. 1000).

13. Добавление пользователя с домашней директорией, без оболочки, с комментариями и User ID

Следующая команда очень похожа на две предыдущие, единственное отличие в том, что мы отключаем командную оболочку для пользователя «avishek» с заданным User ID (т.е. 1019). Это значит, что пользователь «avishek» не сможет авторизоваться в системе из командной оболочки.

14. Добавление пользователя с домашней директорией, skeleton directory, комментариями и User ID

Единственное, что меняется в этой команде, мы используем опцию «-k», чтобы задать skeleton directory, то есть /etc/custom.skel, а не умолчательную /etc/skel. Мы также используем опцию «-s», чтобы задать отдельную оболочку /bin/tcsh.

15. Добавление пользователя без домашней директории, без оболочки, без групп, и с комментариями

Приведенная ниже команда отличается от показанных ранее. Здесь мы используем опцию «-M», чтобы создать пользователя без домашней директории, и «-N», чтобы создать только пользователя (без группы). Аргумент «-r» используется для создания системного пользователя.

Источник

Как создать пользователя Linux

Основу управления правами доступа в Linux и уровнем привилегий в Linux составляют именно пользователи. Изначально, еще при проектировании системы существовал пользователь root, которому позволено выполнять любые действия и другие пользователи, права которых настраиваются с помощью вступления их в группы Linux и установки прав на каталоги.

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

Создание пользователя в Linux

Вся информация о пользователях находится в файле /etc/passwd. Мы могли бы создать пользователя linux просто добавив его туда, но так делать не следует, поскольку для этой задачи существуют специальные утилиты. Одна из таких утилит, это useradd. Рассмотрим ее подробнее.

Команда useradd

Это довольно простая команда, которая есть во всех дистрибутивах Linux. Она позволяет зарегистрировать нового пользователя или изменить информацию об уже имеющемся. Во время создания можно даже создать домашний каталог пользователя и скопировать в него системные файлы. Рассмотрим синтаксис команды:

$ useradd опции имя_пользователя

Все довольно просто, дальше нам нужно рассмотреть основные опции команды, с помощью которых вы будете настраивать нового пользователя:

Теперь, когда вы знаете основные необходимые нам параметры утилиты мы можем перейти к разбору того, как выполняется создание нового пользователя linux. Сначала давайте посмотрим какие параметры будут применены для пользователя по умолчанию:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

Как видите, по умолчанию домашний каталог пользователя будет создан в /home и будет использоваться оболочка /bin/sh. Теперь создадим минимального пользователя с минимальными настройками:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

Был создан самый простой пользователь, без оболочки и пароля, а также без групп. Теперь немного усложним задачу и создадим пользователя с паролем и оболочкой /bin/bash:

Также, можно установить дату, когда аккаунт пользователя будет отключен автоматически, это может быть полезно для пользователей, которые будут работать временно:

Некоторых пользователей интересует создание пользователя с правами root linux, это очень просто делается с помощью useradd, если комбинировать правильные опции. Нам всего лишь нужно разрешить создавать пользователя с неуникальным uid, установить идентификатор в 0 и идентификатор основной группы тоже в 0. Команда будет выглядеть вот так:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linuxПожалуй, это все основные примеры как добавить пользователя linux. Дальше нам осталось взглянуть только на работу в графическом интерфейсе.

Создание нового пользователя linux в GUI

В графическом интерфейсе системы создать нового пользователя linux еще проще. Рассмотрим окружение Gnome, хотя и в KDE тоже есть аналогичная функция. Войдите в главное меню и откройте параметры системы:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

Затем откройте «Пользователи»:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

Поскольку утилита запущена от имени обычного пользователя вы ничего не можете сделать. Поэтому нажмите кнопку «Разблокировать»:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

Только после этого используйте кнопку со знаком плюс для создания нового пользователя Linux:

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

как создать домашнюю директорию пользователя linux. Смотреть фото как создать домашнюю директорию пользователя linux. Смотреть картинку как создать домашнюю директорию пользователя linux. Картинка про как создать домашнюю директорию пользователя linux. Фото как создать домашнюю директорию пользователя linux

После этого создание пользователя linux завершено, новый пользователь появится в списке.

Выводы

В этой статье мы рассмотрели как создать пользователя linux с помощью терминала или в графическом интерфейсе системы. Оба способа имеют свои преимущества. Например, способ в терминале намного гибче, но в то же время графический способ дает больше контроля над процессом. Если у вас остались вопросы, спрашивайте в комментариях!

Источник

Пользователи и группы в linux. Добавление удаление редактирование пользователей

Системы, обеспечивающие многопользовательский доступ, будь то операционная система ОС, программное обеспечение (ПО), система управления контентом (CMS), очень важно иметь инструментарий для надёжного управления пользователями (их аккаунтами или учётными записями, пользовательскими конфигурациями, домашними каталогами и т. д.), а также для организации и управления самим пользовательским доступом. В таких случаях грамотное и продуманное управление пользователями (точнее, их учётными записями) является ключевым аспектом, от которого зависят безопасность, стабильность и, как следствие — надёжность всей системы. В современных дистрибутивах Linux имеются автоматизированные системы управления пользователями с наглядным графическим пользовательским интерфейсом (GUI), что позволяет быстро и удобно выполнять рутинные (как оказывается на самом деле) мероприятия по управлению пользователями и конфигурации их учётных записей. Однако, очень важно знать и понимать как и какие на самом деле процессы и изменения происходят в самой системе во время управления пользователями.

Добавление пользователей в Linux

Для добавления в систему нового пользователя с именем John, следует просто выполнить команду:

В результате будет создана следующая запись в файле /etc/passwd:

Однако, команда useradd располагает куда большими возможностями, например:

Эта команда добавит в систему пользователя с полным именем «John Silver», регистрационным именем «john». Включив его в основную группу «pirates», а также добавит его в ещё одну дополнительную группу «john» и назначит ему домашний каталог по адресу /home/pirates/john. В результате, соответствующая запись в файле /etc/passwd будет примерно такой:

Команда useradd автоматически создаёт домашний каталог пользователя, если он ещё не создан. A также копирует в него файлы из /etc/skel/.

Полный список параметров useradd

Параметры:
-b, —base-dir БАЗ_КАТ базовый каталог для домашнего каталога новой
учётной записи
-c, —comment КОММЕНТАРИЙ поле GECOS новой учётной записи
-d, —home-dir ДОМ_КАТ домашний каталог новой учётной записи
-D, —defaults показать или изменить настройки
по умолчанию для useradd
-e, —expiredate ДАТА_УСТ дата устаревания новой учётной записи
-f, —inactive НЕАКТИВНОСТЬ период неактивности пароля новой учётной записи
-g, —gid ГРУППА имя или ID первичной группы новой
учётной записи
-G, —groups ГРУППЫ список дополнительных групп новой
учётной записи
-k, —skel КАБ_ШАБ использовать альтернативный каталог с шаблонами
-K, —key КЛЮЧ=ЗНАЧЕНИЕ заменить значение по умолчанию
из /etc/login.defs
-l, —no-log-init не добавлять пользователя в базы данных lastlog и
faillog
-m, —create-home создать домашний каталог пользователя
-M, —no-create-home не создавать домашний каталог пользователя
-N, —no-user-group не создавать группу с тем же именем что и у
пользователя
-o, —non-unique разрешить создание пользователей с
повторяющимися (не уникальными) UID
-p, —password ПАРОЛЬ зашифрованный пароль новой учётной записи
-r, —system создать системную учётную запись
-R, —root КАТ_CHROOT каталог, в который выполняется chroot
-s, —shell ОБОЛОЧКА регистрационная оболочка новой
учётной записи
-u, —uid UID пользовательский ID новой учётной записи
-U, —user-group создать группу с тем же именем что и у
пользователя
-Z, —selinux-user SEUSER использовать указанного SEUSER для
пользовательского сопоставления SELinux

Создание и назначение домашнего каталога пользователю

Обычно домашний каталог создается автоматически при добавлении пользователя в систему. Но бывают случаи когда по каким либо причинам домашний каталог не создается. А затем появляется необходимость создать его. Для создания домашнего каталога пользователя используется стандартная команда mkdir. После этого нужно скопировать необходимые конфигурационные скрипты в домашний каталог (для организации рабочей среды пользователя), далее, с помощью команд chown и chmod задать владельца и режимы доступа к каталогу и его содержимому. Это лучше сделать после того как все конфигурационные файлы были скопированы в целевой каталог. Например:

Как видно, файлы конфигурации были скопированы из каталога /etc/skel/ – именно здесь хранятся примеры конфигураций запуска, которые можно отредактировать так, как это необходимо. Кстати, модифицирование копии файлов из каталога /etc/skel/ следует хранить в каталоге usr/local/etc/skel. При задании владельца домашнего каталога необходимо следить за тем, чтобы (в случае неаккуратного использования команды chown) пользователь не стал владельцем псевдокаталога «..», т. е. каталог, уровнем выше, который часто представляет собой каталог /home, что по соображениям безопасности недопустимо.

Создание пароля для пользователя

В целях безопасности для учётной записи обязательно должен существовать надёжный пароль. Который следует задать сразу же после создания учётной записи пользователя:

Например, для пользователя jonh:

Проверка учётной записи

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

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

Управление учётными записями

Как уже ранее отмечалось, для управления пользователями в Linux-системах существуют наборы специализированных утилит для добавления, редактирования и удаления учётных записей (пользователей) — useradd, usermod и userdel. Они выполняют предписанный порядок действий для достижения конечной цели — например, в случае с добавлением нового пользователя, команда useradd производит, соответственно, весь вышеописанный «комплекс мероприятий». Каждую из этих утилит можно гибко настроить с помощью конфигурационных файлов, чем, кстати, очень активно пользуются разработчики дистрибутивов Linux. Ведь в разных Linux-системах работа этих утилит незначительно, но отличается, хотя утилиты, по сути, идентичные. Ниже приводится таблица, показывающая команды и файлы конфигурации для управления пользователями для некоторых систем на примере утилиты useradd:

СистемаКомандыФайлы конфигурацииКомментарий
Ubuntuuseradd/etc/login.defs
adduser/etc/default/useraddPerl-версия
/etc/adduser.conf
SUSEuseradd/etc/login.defs
/etc/default/useradd
/etc/default/passwd
/usr/sbin/useradd.localЛокальные настройки
/usr/sbin/userdel.localЛокальные настройки
/usr/sbin/userdel-pre.localЛокальные настройки
/usr/sbin/userdel-post.localЛокальные настройки
Red Hatuseradd/etc/login.defs
/etc/default/useradd
Solarisuseradd/etc/default/
/etc/security/policy.conf

Удаление пользователей

Для удаления пользователей из системы используется команда userdel, например команда

Удалит пользователя john, но зачастую (как и команда useradd, кстати) не в «чистом» виде, а в виде Perl-оболочек с использованием сценария удаления учётной записи. Например, в дистрибутивах Ubuntu используется команда deluser, которая является обычным сценарием на Perl. Который, в свою очередь, вызывает саму команду userdel для удаления и очистки всего того, что было сделано ранее командой useradd. При этом, используется файл сценария (обычно это файл /etc/deluser.conf в Ubuntu и /etc/login.defs в RedHat). Который позволяет задать следующие опции для работы команды userdel:

Использование: userdel [параметры] ПОЛЬЗОВАТЕЛЬ

Параметры:
-f, —force принудительное удаление пользователя и файлов, даже если они используются в настоящее время
-r, —remove удалить домашний каталог и почтовый ящик
-R, —root КАТ_CHROOT каталог, в который выполняется chroot
-Z, —selinux-user удалить все пользовательские сопоставления
SELinux для пользователя

Файл /etc/passwd – описание локальных учётных записей

Если в системе не используется какая-либо автоматизированная служба управления каталогами (например LDAP, NIS), то файл /etc/passwd – это именно тот файл, в котором хранится информация об учётных записях пользователей, известных системе. К этому файлу система обращается всякий раз при попытке авторизации пользователя в поисках требуемого идентификатора пользователя и определения его домашнего каталога. Формат этого файла заключается в том, что каждая строка в нём соответствует одному конкретному пользователю (учётной записи), в которой (в строке) перечислены атрибуты (поля) учётной записи, разделяемые символом двоеточия:

Файл /etc/group – создание и удаление групп пользователей

Добавления новой группы в Linux осуществляется с помощью команды

где group_name название новой группы. Эта команда создаст в файле /etc/group новую запись

Интересным здесь является поле пароля. Пароль группы предназначен для того, чтобы пользователи могли вступить в группу с помощью команды newgrp. Сам же пароль для группы задаётся командой gpasswd, после чего он в зашифрованном виде будет храниться в файле /etc/gshadow. Однако, следует заметить, что пароли для групп используются крайне редко. Системным администраторам следует следить за содержимым файлов /etc/passwd и /etc/group и согласовывать их между собой, поскольку иногда возникают ситуации, когда пользователь указывается членом группы в файле /etc/passwd и в то же время в файле /etc/group такого объявления нет. Следует заметить, что в этом случае пользователь будет считаться членом группы, однако всё же настоятельно рекомендуется согласовывать содержимое обоих файлов.

По умолчанию в дистрибутивах Linux (кроме SUSE), при создании пользователя (утилита useradd) создаётся и его одноимённая группа, в которую он сразу же включается. Это предусмотрено для того, чтобы максимально исключить вероятность доступа разных пользователей к файлам друг друга.

Удалить группу пользователей можно с помощью команды

Эта команда удалит запись из /etc/group.

Файл /etc/shadow – хранение паролей

Для хранения скрытых или теневых паролей используется отдельный файл /etc/shadow. Доступ к которому доступен только суперпользователю. Нужно также заметить, что файлы /etc/shadow и /etc/passwd хоть и связаны концептуально, однако на уровне системы между ними практически нет никакого взаимодействия. За исключением того, что поле, содержащее регистрационное имя в shadow берётся из passwd. Т.е. при модификации shadow, изменения не отражаются автоматически в passwd – эти файлы хранятся отдельно и обрабатываются системой независимо друг от друга. Формат /etc/shadow аналогичен /etc/passwd и каждая строка включает в себя следующие поля:

Запись из файла /etc/shadow выглядит следующим образом:

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *