Воссоздание пользователя на отдельном home-разделе: различия между версиями
Нет описания правки |
Нет описания правки |
||
(не показаны 3 промежуточные версии 3 участников) | |||
Строка 19: | Строка 19: | ||
4.Удалите старую учетную запись | 4.Удалите старую учетную запись | ||
userdel ''username'' | userdel ''username'' | ||
[[Категория:HOWTO]] | |||
5.Создайте нового пользователя | 5.Создайте нового пользователя | ||
useradd ''username'' | useradd ''username'' | ||
passwd ''username'' | passwd ''username'' | ||
Если пользователь - администратор, то выполните: | Если пользователь - администратор, то выполните: | ||
adduser ''username'' | adduser ''username'' wheel | ||
6.Перезагрузитесь. | 6.Перезагрузитесь. | ||
==Способ не требующий удаления и повторного создания пользователя== | |||
Можно не пересоздавать пользователей, а скопировать "чистый" профиль из заготовки которая используется при создании новых пользователей. По умолчанию этот шаблон находится в <code>/etc/skel</code> (либо смотрите содержимое <code>/etc/default/useradd</code>, если у вас не так). | |||
Первым делом нам необходимо узнать расположение домашнего каталога и идентификаторы самого пользователя и его основной группы: | |||
grep ''username'' /etc/passwd | |||
Команда вернёт строку разделённую двоеточиями, например <code>''username'':x:500:500:Foma Kiniaev:/home/''username'':/bin/bash</code>, где нас интересуют первые ''500'' — идентификатор пользователя, вторые ''500'' — идентификатор группы и /home/''username'' — путь к домашнему каталогу пользователя. | |||
Создаём каталог и назначаем ему корректные права: | |||
mkdir /home/''username'' | |||
chmod 700 /home/''username'' | |||
Копируем содержимое шаблона в наш новый домашний каталог: | |||
cp -a /etc/skel/. /home/''username'' | |||
Отзываем все права для группы и других пользователей: | |||
chmod -R g-rwx,o-rwx /home/''username'' | |||
Назначаем владельцем пользователя: | |||
chown -R ''UID'':''GID'' /home/''username'' | |||
где вместо UID и GID небходимо подставить прочитанные из <code>/etc/passwd</code> идентификаторы пользователя и группы соответственно. | |||
И последним этапом, если мы имеем дело с рабочей станцией и нам нужны каталоги «загрузки», «рабочий стол» и т.п., от имени пользователя для которого создаём каталоги необходимо выполнить: | |||
xdg-user-dirs-update --force |
Текущая версия от 22:28, 28 июля 2022
Предыстория: При установке ALT Linux (Simply Linux) на систему было выделено два раздела: один на систему, второй на home. После одного случая (при восстановлении файлов с внешнего сбойнго харда) home-раздел почему-то повредился и мне пришлось восстанавливать с него файлы (на другой раздел, благо их было немного). После этого раздел был отформатирован в другую файловую систему и использован для восстановления файлов с внешнего сбойного жесткого диска.
При этом раздел с системой остался цел.
После того как все было восстановлено, скопировано обратно и я спокойно вздохнул, передо мной встал вопрос: Когда я заново отформатирую раздел для home и пропишу его в fstab как мне заново создать на нем пользовательские папки? Не переустанавливать же систему?
1.В системе, которая не найдя home-раздела грузится в консоль, введите пароль root и выполните:
fdisk -l nano /etc/fstab
Посмотрите идентификатор вашего home-раздела.
И в fstab, в строке /home, если нужно, исправьте UUID (Если не используются идентификаторы вида /dev/* ).
2.Перезагрузитесь
3.Посмотрите список пользователей
grep -i "/home" /etc/passwd
4.Удалите старую учетную запись
userdel username
5.Создайте нового пользователя
useradd username passwd username
Если пользователь - администратор, то выполните:
adduser username wheel
6.Перезагрузитесь.
Способ не требующий удаления и повторного создания пользователя
Можно не пересоздавать пользователей, а скопировать "чистый" профиль из заготовки которая используется при создании новых пользователей. По умолчанию этот шаблон находится в /etc/skel
(либо смотрите содержимое /etc/default/useradd
, если у вас не так).
Первым делом нам необходимо узнать расположение домашнего каталога и идентификаторы самого пользователя и его основной группы:
grep username /etc/passwd
Команда вернёт строку разделённую двоеточиями, например username:x:500:500:Foma Kiniaev:/home/username:/bin/bash
, где нас интересуют первые 500 — идентификатор пользователя, вторые 500 — идентификатор группы и /home/username — путь к домашнему каталогу пользователя.
Создаём каталог и назначаем ему корректные права:
mkdir /home/username chmod 700 /home/username
Копируем содержимое шаблона в наш новый домашний каталог:
cp -a /etc/skel/. /home/username
Отзываем все права для группы и других пользователей:
chmod -R g-rwx,o-rwx /home/username
Назначаем владельцем пользователя:
chown -R UID:GID /home/username
где вместо UID и GID небходимо подставить прочитанные из /etc/passwd
идентификаторы пользователя и группы соответственно.
И последним этапом, если мы имеем дело с рабочей станцией и нам нужны каталоги «загрузки», «рабочий стол» и т.п., от имени пользователя для которого создаём каталоги необходимо выполнить:
xdg-user-dirs-update --force