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

Установка, обновление, настройка Linux

Модераторы: Olej, adminn

Аватара пользователя
bellic
Писатель
Сообщения: 379
Зарегистрирован: 02 сен 2022, 14:41
Откуда: Ростов-на-Дону
Контактная информация:

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

Непрочитанное сообщение bellic » 04 сен 2022, 19:16

Ну прошляпил я!!!!
Создал юзера, включил его в нужные и ненужные группы, указал какой каталог является его домашним, а создать его не удосужился при этом!!!!
...
Как теперь быть?
...
Интернет советует команду

Код: Выделить всё

mkhomedir_helper user
Но у меня нет этой команды и на установочном дистрибе нет, хотя мануал имеется в системе...

Код: Выделить всё

MKHOMEDIR_HELPER(8)                                      Linux-PAM Manual                                      MKHOMEDIR_HELPER(8)

NAME
       mkhomedir_helper - Helper binary that creates home directories

SYNOPSIS
       mkhomedir_helper {user} [umask [ path-to-skel ]]

DESCRIPTION
       mkhomedir_helper is a helper program for the pam_mkhomedir module that creates home directories and populates them with
       contents of the specified skel directory.

       The default value of umask is 0022 and the default value of path-to-skel is /etc/skel.

       The helper is separated from the module to not require direct access from login SELinux domains to the contents of user
       home directories. The SELinux domain transition happens when the module is executing the mkhomedir_helper.

       The helper never touches home directories if they already exist.

SEE ALSO
       pam_mkhomedir(8)

AUTHOR
       Written by Tomas Mraz based on the code originally in pam_mkhomedir module.

Linux-PAM Manual                                            05/18/2017                                         MKHOMEDIR_HELPER(8)

По модулю pam_mkhomedir тоже мануал имеется....

Код: Выделить всё

       PAM_SUCCESS
           Environment variables were set.

FILES
       /etc/skel
           Default skel directory

EXAMPLES
       A sample /etc/pam.d/login file:

             auth       requisite   pam_securetty.so
             auth       sufficient  pam_ldap.so
             auth       required    pam_unix.so
             auth       required    pam_nologin.so
             account    sufficient  pam_ldap.so
             account    required    pam_unix.so
             password   required    pam_unix.so
             session    required    pam_mkhomedir.so skel=/etc/skel/ umask=0022
             session    required    pam_unix.so
             session    optional    pam_lastlog.so
             session    optional    pam_mail.so standard

SEE ALSO
       pam.d(5), pam(7).

AUTHOR
       pam_mkhomedir was written by Jason Gunthorpe <jgg@debian.org>.

Linux-PAM Manual                                            05/18/2017                                            PAM_MKHOMEDIR(8)
 Manual page pam_mkhomedir(8) line 43/71 (END) (press h for help or q to quit)

Как заполучить ее?

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

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

Непрочитанное сообщение Olej » 04 сен 2022, 19:57

bellic писал(а):
04 сен 2022, 19:16
Создал юзера, включил его в нужные и ненужные группы, указал какой каталог является его домашним, а создать его не удосужился при этом!!!!
Странно ... :-(

Код: Выделить всё

olej@R420:~$ adduser --help
adduser [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID]
[--firstuid ID] [--lastuid ID] [--gecos GECOS] [--ingroup GROUP | --gid ID]
[--disabled-password] [--disabled-login] [--add_extra_groups]
[--encrypt-home] USER
   Add a normal user

adduser --system [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID]
[--gecos GECOS] [--group | --ingroup GROUP | --gid ID] [--disabled-password]
[--disabled-login] [--add_extra_groups] USER
   Add a system user

adduser --group [--gid ID] GROUP
addgroup [--gid ID] GROUP
   Add a user group

addgroup --system [--gid ID] GROUP
   Add a system group

adduser USER GROUP
   Add an existing user to an existing group

general options:
  --quiet | -q      don't give process information to stdout
  --force-badname   allow usernames which do not match the
                    NAME_REGEX[_SYSTEM] configuration variable
  --extrausers      uses extra users as the database
  --help | -h       usage message
  --version | -v    version number and copyright
  --conf | -c FILE  use FILE as configuration file
Насколько я помню, если указать опцию --system - то создаётся пользователь без домашнего каталога. Это не системный пользователь, в смысле администратор, а системный демон.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

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

Непрочитанное сообщение Olej » 04 сен 2022, 20:00

bellic писал(а):
04 сен 2022, 19:16
Как теперь быть?
Прежде всего, проверить что там за запись пользователя создалась:

Код: Выделить всё

olej@R420:~$ cat /etc/passwd | grep olej
olej:x:1000:1000:Olej,,,:/home/olej:/bin/bash
Там есть и домашний каталог + и командные интерпретатор используемый.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

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

Непрочитанное сообщение Olej » 04 сен 2022, 20:04

bellic писал(а):
04 сен 2022, 19:16
Как теперь быть?
Можете удалять и создавать заново пользователя сколько хотите раз (порепетировать :lol: ) ... может с опциями создания было что не так?
Можно создавать заново с опцией: --gid ID - чтобы не плодить новые ID групп... Или можете потом удалить не использованные группы:

Код: Выделить всё

olej@R420:~$ delgroup --help
deluser ПОЛЬЗОВАТЕЛЬ
  удаляет обычного учётную запись пользователя из системы
  пример: deluser mike

  --remove-home             удалить домашний каталог пользователя
                            и почтовый ящик
  --remove-all-files        удалить все файлы принадлежащие пользователю
  --backup                  сделать резервные копии файлов перед удалением.
  --backup-to <КАТ>         каталог для резервных копий файлов.
                            По умолчанию используется текущий каталог.
  --system                  удалить только если учётная запись системная

delgroup ГРУППА
deluser --group ГРУППА
  удаляет группу из системы
  пример: deluser --group students

  --system                  удалить только если группа системная
  --only-if-empty           удалить, только если в ней нет пользователей

deluser ПОЛЬЗОВАТЕЛЬ ГРУППА
  удаляет пользователя из группы
  пример: deluser mike students

общие параметры:
  --quiet | -q              не выводить информацию при работе в stdout
  --help | -h               показать справку об использовании
  --version | -v            показать версию и авторские права
  --conf | -c ФАЙЛ          использовать ФАЙЛ в качестве конфигурационного

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

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

Непрочитанное сообщение Olej » 04 сен 2022, 20:11

bellic писал(а):
04 сен 2022, 19:16
Создал юзера, включил его в нужные и ненужные группы, указал какой каталог является его домашним, а создать его не удосужился при этом!!!!
Если вы не напортили, в ходе экспериментов, ещё с правами каталогов - должно быть как-то так:

Код: Выделить всё

olej@R420:~$ ls -ld /home/
drwxr-xr-x 3 root root 4096 мая  6 15:30 /home/

Код: Выделить всё

olej@R420:~$ ls -ld /home/olej
drwxr-xr-x 57 olej olej 4096 сен  4 12:01 /home/olej
То вы можете:
1). войти в терминале с именем этого пользователя:

Код: Выделить всё

$ su user
2). войдя с его именем, создать домашний каталог:

Код: Выделить всё

$ mkdir /home/user
Может не разрешить из-зи прав /home, тогда можете сделать это от root:

Код: Выделить всё

# mkdir /home/user
И изменить принадлежность этого /home/user:

Код: Выделить всё

# chown user:user -R /home/user

Аватара пользователя
bellic
Писатель
Сообщения: 379
Зарегистрирован: 02 сен 2022, 14:41
Откуда: Ростов-на-Дону
Контактная информация:

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

Непрочитанное сообщение bellic » 04 сен 2022, 20:17

Olej писал(а):
04 сен 2022, 20:00
cat /etc/passwd | grep olej

Код: Выделить всё

user@wn22:~$ cat /etc/passwd | grep admin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
admin:x:1001:1002:zluca,,,:/home/admin:/bin/bash
user@wn22:~$ 

Аватара пользователя
bellic
Писатель
Сообщения: 379
Зарегистрирован: 02 сен 2022, 14:41
Откуда: Ростов-на-Дону
Контактная информация:

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

Непрочитанное сообщение bellic » 04 сен 2022, 20:23

Код: Выделить всё

user@wn22:~$ ls -ld /home/
drwxr-xr-x 4 root root 4096 авг 15 12:46 /home/
user@wn22:~$

Код: Выделить всё

user@wn22:~$ ls -ld /home/admin
ls: невозможно получить доступ к '/home/admin': Нет такого файла или каталога
user@wn22:~$

Код: Выделить всё

user@wn22:~$ su admin
Пароль: 
su: Сбой при проверке подлинности
user@wn22:~$

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

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

Непрочитанное сообщение Olej » 04 сен 2022, 20:43

bellic писал(а):
04 сен 2022, 20:23

Код: Выделить всё

user@wn22:~$ su admin
Пароль: 
su: Сбой при проверке подлинности
user@wn22:~$
Потому что для admin, скорее всего, не назначен пароль.
От root:

Код: Выделить всё

# passwd user
...

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

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

Непрочитанное сообщение Olej » 04 сен 2022, 20:46

bellic писал(а):
04 сен 2022, 20:23

Код: Выделить всё

user@wn22:~$ su admin
Пароль: 
su: Сбой при проверке подлинности
user@wn22:~$
Сделайте это от root - создайте /home/admin - потом сменить владельца домашнего каталога:

Код: Выделить всё

# chown -R admin:admin /home/admin

Аватара пользователя
bellic
Писатель
Сообщения: 379
Зарегистрирован: 02 сен 2022, 14:41
Откуда: Ростов-на-Дону
Контактная информация:

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

Непрочитанное сообщение bellic » 04 сен 2022, 21:05

Удалил из Окошек юзера...

Код: Выделить всё

useradd -c "zluka,,," -s /bin/bash -m -G video,users,scanner,plugdev,netdev,lpadmin,floppy,dip,dialout,cdrom,audio,astra-console,astra-admin -u 1001 -U admin
задал пароль:

Код: Выделить всё

echo "admin:password" | chpasswd
Пробую:

Код: Выделить всё

root@wn22:/home/user# su admin
admin@wn22:/home/user$ 
Пробую зайти в Окошки.....

Ура!!!!
Все получилось!!!! :-D

Ответить

Вернуться в «Администрирование Linux»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя