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

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

  • автор:

Пользователи и группы

Добавление пользователя осуществляется при помощи команды useradd . Пример использоания:

Эта команда создаст в системе нового пользователя vasyapupkin. Чтобы изменить настройки создаваемого пользователя, вы можете использовать следующие ключи:

Ключ Описание
-b Базовый каталог. Это каталог, в котором будет создана домашняя папка пользователя. По умолчанию /home
Комментарий. В нем вы можете напечатать любой текст.
-d Название домашнего каталога. По умолчанию название совпадает с именем создаваемого пользователя.
-e Дата, после которой пользователь будет отключен. Задается в формате ГГГГ-ММ-ДД. По умолчанию отключено.
-f Количество дней, которые должны пройти после устаревания пароля до блокировки пользователя, если пароль не будет изменен (период неактивности). Если значение равно 0, то запись блокируется сразу после устаревания пароля, при -1 — не блокируется. По умолчанию -1.
-g Первичная группа пользователя. Можно указывать как GID, так и имя группы. Если параметр не задан будет создана новая группа название которой совпадает с именем пользователя.
-G Список вторичных групп в которых будет находится создаваемый пользователь
-k Каталог шаблонов. Файлы и папки из этого каталога будут помещены в домашнюю папку пользователя. По умолчанию /etc/skel.
-m Ключ, указывающий, что необходимо создать домашнюю папку. По умолчанию домашняя папка не создается.
-p Зашифрованный пароль пользователя. По умолчанию пароль не задается, но учетная пользователь будет заблокирован до установки пароля
-s Оболочка, используемая пользователем. По умолчанию /bin/sh.
-u Вручную задать UID пользователю.
Параметры создания пользователя по умолчанию

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

Результат будет примерно следующий:

Если вас не устраивают такие настройки, вы можете поменять их выполнив

где -s это ключ из таблицы выше.

Изменение пользователя

Изменение параметров пользователя происходит с помощью утилиты usermod . Пример использования:

usermod использует те же опции, что и useradd.

Изменение пароля

Изменить пароль пользователю можно при помощи утилиты passwd .

и ввести старый и новый пароли.

Основные ключи passwd:

Ключ Описание
-d Удалить пароль пользователю. После этого пароль будет пустым, и пользователь сможет входить в систему без предъявления пароля.
-e Сделать пароль устаревшим. Это заставит пользователя изменить пароль при следующем входе в систему.
-i Заблокировать учетную запись пользователя по прошествии указанного количества дней после устаревания пароля.
-n Минимальное количество дней между сменами пароля.
-x Максимальное количество дней, после которого необходимо обязательно сменить пароль.
-l Заблокировать учетную запись пользователя.
-u Разблокировать учетную запись пользователя.

Установка пустого пароля пользователя

Супер пользователь с помощью утилит командной строки passwd и usermod или путем редактирования файла /etc/shadow может удалить пароль пользователь, дав возможность входить в систему без указания пароля.

Установка пустого пароля может быть полезна как временное решение проблемы в ситуации, когда пользователь забыл свой пароль или не может его ввести из-за проблем с раскладкой клавиатуры. После этого имеет смысл принудить пользователя установить себе новый пароль при следующем входе в систему

Получение информации о пользователях

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

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

userdel имеет всего два основных ключа:

Ключ Описание
-f Принудительно удалить пользователя, даже если он сейчас работает в системе.
-r Удалить домашний каталог пользователя.

Управление группами

Создание группы

Программа groupadd создаёт новую группу согласно указанным значениям командной строки и системным значениям по умолчанию. Пример использования:

Ключ Описание
-g Установить собственный GID.
-p Пароль группы.
-r Создать системную группу.

Изменение группы

Сменить название группы, ее GID или пароль можно при помощи groupmod . Пример:

Ключ Описание
-g Установить другой GID.
-n Новое имя группы.
-p Изменить пароль группы.

Удаление группы

Удаление группы происходит так:

groupdel не имеет никаких дополнительных параметров.

Файлы конфигурации

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

/etc/passwd

В файле /etc/passwd хранится вся информация о пользователях кроме пароля. Одна строка из этого файла соответствует описанию одного пользователя. Примерное содержание строки таково:

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

Поле Описание
1 vasyapupkin Имя пользователя для входа в систему.
2 x Необязательный зашифрованный пароль.
3 1000 Числовой идентификатор пользователя (UID).
4 1000 Числовой идентификатор группы (GID).
5 Vasya Pupkin Поле комментария
6 /home/vpupkin Домашний каталог пользователя.
7 /bin/bash Оболочка пользователя.

Второе и последнее поля необязательные и могут не иметь значения.

/etc/group

В /etc/group, как очевидно из названия хранится информация о группах. Она записана в аналогичном /etc/passwd виде:

Поле Описание
1 vasyapupkin Название группы
2 x Необязательный зашифрованный пароль.
3 1000 Числовой идентификатор группы (GID).
4 vasyapupkin,petya Список пользователей, находящихся в группе.

В этом файле второе и четвертое поля могут быть пустыми.

/etc/shadow

Файл /etc/shadow хранит в себе пароли, по этому права, установленные на этот файл, не дают считать его простому пользователю. Пример одной из записей из этого файла:

Поле Описание
1 vasyapupkin Имя пользователя для входа в систему.
2 $6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0 Необязательный зашифрованный пароль.
3 15803 Дата последней смены пароля.
4 0 Минимальный срок действия пароля.
5 99999 Максимальный срок действия пароля.
6 7 Период предупреждения о пароле.
7 Период неактивности пароля.
9 Дата истечения срока действия учётной записи.

Управление пользователями и группами через GUI

В текущей версии Ubuntu отсутствует штатная утилита управления группами пользователей системы, поэтому по умолчанию все действия с группами необходимо выполнять в консоли. Однако для этих целей существует специальная утилита «Пользователи и группы».

Установка

Пакет gnome-system-tools находится в репозитории Ubuntu, поэтому ставится одной командой:

Управление группами

Для добавления, удаления групп, а также добавления\удаления пользователей в\из конкретных групп, необходимо в главном окне нажать кнопку «Управление группами», после чего вы увидите окно, отображающее все присутствующие в системе группы: в котором выбрав нужную группу и нажав «Свойства» можно отметить галочкой пользователей, которых необходимо внести в группу.

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

Вам понадобятся привилегии пользователя root в системе Linux для выполнения действий, описанных в данной главе.

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

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

Другим вариантом является использование таких инструментов с интерфейсом командной строки , как useradd, usermod, gpasswd, passwd и других. Администраторы серверов с большой вероятностью используют именно эти инструменты, так как они им знакомы, а также поставляются в неизменном виде в составе различных дистрибутивов. В данной главе будут рассматриваться именно эти инструменты с интерфейсом командной строки.

Третий довольно радикальный способ управления учетными записями пользователей заключается в непосредственном редактировании локальных файлов конфигурации с помощью текстового редактора vi (или vipw/vigr). Не пытайтесь делать это при работе системами, находящимися в промышленной эксплуатации, в том случае, если вы не обладаете соответствующими знаниями!

Файл /etc/passwd

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

Пользователь root

Утилита useradd

Как видно из примера, пользователь с именем yanina получил идентификатор 529, а также идентификатор основной группы 529.

Файл /etc/default/useradd

Утилита userdel

Утилита usermod

Создание домашних директорий пользователей

Простейший способ создания домашней директории пользователя заключается в передаче параметра -m утилите useradd (вполне вероятно, что данный параметр передается по умолчанию в вашем дистрибутиве Linux).

Директория /etc/skel/

Удаление домашних директорий пользователей

Командная оболочка, используемая для входа в систему

Утилита chsh

Учтите, что в дистрибутиве Debian не существует параметра -l упомянутой утилиты, а также в данном примере предполагается, что командные оболочки ksh и csh установлены в системе.

Практическое задание: управление учетными записями пользователей

1. Создайте учетную запись пользователя с именем serena и описанием (или комментарием) «Serena Williams» , а также домашнюю директорию этого пользователя. Выполните необходимые действия в рамках одной команды.

2. Создайте учетную запись пользователя с именем venus , указанием на необходимость использования командной оболочки bash и описанием «Venus Williams» , а также домашнюю директорию этого пользователя с помощью одной команды.

3. Убедитесь в том, что обоим пользователям соответствуют корректные записи в файлах /etc/passwd , /etc/shadow и /etc/group .

4. Проверьте корректность создания домашних директорий пользователей.

5. Создайте учетную запись пользователя с именем einstime и утилитой /bin/time в качестве стандартной командной оболочки.

6. Что случится, если вы войдете в систему под именем пользователя einstime ? Можете ли вы сделать предположение о реальной ситуации, в которой было бы полезно заменить стандартную командную оболочку пользователя на приложение?

7. Создайте файл с именем welcome.txt и убедитесь в том, что каждый новый пользователь будет обнаруживать данный файл в своей домашней директории.

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

9. Измените стандартную командую оболочку для входа в систему пользователя serena на командную оболочку /bin/bash . Осуществите необходимые проверки перед изменением командной оболочки и после него.

Корректная процедура выполнения практического задания: управление учетными записями пользователей

1. Создайте учетную запись пользователя с именем serena и описанием (или комментарием) «Serena Williams» , а также домашнюю директорию этого пользователя. Выполните необходимые действия в рамках одной команды.

2. Создайте учетную запись пользователя с именем venus , указанием на необходимость использования командной оболочки bash и описанием «Venus Williams» , а также домашнюю директорию этого пользователя с помощью одной команды.

3. Убедитесь в том, что обоим пользователям соответствуют корректные записи в файлах /etc/passwd , /etc/shadow и /etc/group .

4. Проверьте корректность создания домашних директорий пользователей.

5. Создайте учетную запись пользователя с именем einstime и утилитой /bin/time в качестве стандартной командной оболочки.

6. Что случится, если вы войдете в систему под именем пользователя einstime ? Можете ли вы сделать предположение о реальной ситуации, в которой было бы полезно заменить стандартную командную оболочку пользователя на приложение?

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

7. Создайте файл с именем welcome.txt и убедитесь в том, что каждый новый пользователь будет обнаруживать данный файл в своей домашней директории.

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

9. Измените стандартную командую оболочку для входа в систему пользователя serena на командную оболочку /bin/bash . Осуществите необходимые проверки перед изменением командной оболочки и после него.

Sorry, you have been blocked

This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.

What can I do to resolve this?

You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.

Cloudflare Ray ID: 7d99c7a63cf83009 • Your IP: Click to reveal 138.199.34.39 • Performance & security by Cloudflare

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

По умолчанию, когда вы создаете пользователя в Linux, домашний каталог создается в каталоге /home.

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

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

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

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

В примере я использую Ubuntu 20.04 и собираюсь создать пользователя с именем ‘bob’ с помощью команды useradd:

Если я попытаюсь войти в систему от этого пользователя, используя su -, система показывает logging in with Home=/

Это означает, что домашний каталог пользователя не создан.

В Linux домашним каталогом пользователя по умолчанию является /home.

Чтобы создать домашний каталог по умолчанию, используйте команду mkhomedir_helper.

Обязательно запустите команду mkhomedir_helper от имени пользователя root или пользователя с доступом sudo.

В графической среде (например, GNOME или XFCE), если вам не хватает подкаталогов в домашнем каталоге, пользователь должен выйти из системы и войти обратно.

При первом входе пользователя в систему все подкаталоги, такие как папки Pictures, Documents, Videos, и Downloads , могут быть созданы в домашнем каталоге.

Другой метод – удалить пользователя и создать нового пользователя с помощью параметра -m или –create-home.

Следующая команда создает домашнюю папку (-m) и задаст указанный домашний каталог (-d) в качестве значения для входа нового пользователя:

Заключение

В заключение, если вы являетесь поклонником Ubuntu, вы должны теперь использовать команду adduser.

Если у вас уже есть пользователь, теперь вы сможете добавить каталог по умолчанию.

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

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