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

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

Допустим, у меня есть пользователь по именипанорамыи его домашний каталог находится в /home/panos. Затем я создаю другого пользователя с именемТом:

adduser Tom

Он создает пользователяТому кого есть домашний каталог:/home/Tom

Вопрос: что если я хочу создать нового пользователя и дать ему в качестве домашнего каталога домашний каталог другого пользователя. Например, давайте создадим пользователяДжеррии передайте ему в качестве домашнего каталога домашний каталог пользователяПанос:

adduser -d /home/panos Jerry

но есть ошибка:

adduser: warning: the home directory already exists.
Not copying any file from skel directory into it.

Однако, если вы взглянете на /etc/passwdфайл:

tail -n 3 /etc/passwd
anthony:x:501:501::/home/anthony:/bin/bash
panos:x:502:502::/home/panos:/bin/bash
Jerry:x:503:503::/home/panos:/bin/bash

кажется, это сработало. Но когда я попытался войти как Джерри:

[root@LinuxAcademy ~]# su Jerry
bash-4.1$ bash: /home/panos/.bashrc: Permission denied
bash-4.1$ 

он не позволяет мне войти в систему как Джерри, а также изменяет мою подсказку (ПС1).

Итак, как мне это сделать? Возможно ли это?

решение1

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

adduser: предупреждение: домашний каталог уже существует.
Не копируются в него файлы из каталога skel.

Это не ошибка, это предупреждение. Обычно причина не создавать домашний каталог — пользователь, домашний каталог которого не должен существовать. Здесь он есть, что с большой вероятностью может быть ошибкой системного администратора (например, неудачное копирование-вставка или глючный скрипт). Поскольку вы на самом деле хотели использовать существующий домашний каталог, проигнорируйте это предупреждение.

[root@LinuxAcademy ~]# su Jerry
bash-4.1$ bash: /home/panos/.bashrc: Permission denied
bash-4.1$ 

Вы вошли как Джерри. Этот bash 4.1 запущен как Джерри. У Джерри нет разрешения на чтение его ~/.bashrc, либо потому, что файл .bashrcдоступен только для чтения panos(и, возможно, для группы, к которой Джерри не принадлежит), либо потому, что /home/panosсам каталог недоступен ( xразрешение) для Джерри. Поэтому bash сообщает вам, что не может прочитать свой файл запуска, и отображает приглашение по умолчанию.

Наличие нескольких пользователей с одним и тем же домашним каталогом — явление весьма необычное (исключая системные учетные записи, домашний каталог которых не имеет значения). Что вам следует делать с разрешениями, зависит от того, чего вы пытаетесь добиться этим. Вероятно, вы хотите, по крайней мере, разрешить всем этим пользователям читать свой домашний каталог.

решение2

Ну, конечно. Он пытается прочитать и выполнить /home/panos/.bashrc. Этот файл принадлежит пользователю panos, и, предположительно, установлен на -rwx------или что-то в этом роде. Поэтому Jerryпытается прочитать его и не может. Permission denied, как и сказано.

Вполне возможно, что Jerryна самом делеявляетсявошёл в систему. Попробуйте whoami.

Итак, поместите их в одну группу и сделайте ее group-rx, или world-rx, или что-то в этом роде. И сделайте то же самое для домашнего каталога (исполняемый, для каталога, означает доступный для поиска).

решение3

$ mv /home/jerry /home/xxx
$ userdel -r jerry
$ rm -rf /var/spool/mail/jerry
$ useradd jerry
$ mv /home/xxx /home/jerry

jerry home уже существует, поэтому вы подскажете, как

bash-4.1$ bash 

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

Связанный контент