Я обычно склонен входить в систему как root, что я считаю плохой практикой.

Итак, я создал другого пользователя, назовем его user1 . За исключением случаев, когда я вхожу в систему как этот пользователь, я помещаюсь в пустой каталог /home, и это довольно бесполезно

Проблема в том, что я хочу, чтобы user1 имел доступ к другому каталогу users /home /, эффективно клонируя разрешения других пользователей. Как я могу это сделать?

1 ответ1

2

Вы можете сделать это, имея одинаковый идентификатор пользователя (UID) для обоих пользователей, но это очень плохая практика и может иметь непредвиденные последствия. Смотрите это для всестороннего обсуждения этого.

Лучшим способом является либо размещение этих пользователей в одной группе и установка разрешений группы R или RW в их домах, либо, что еще лучше, использование расширенных атрибутов (man setfattr), либо предоставление вашему пользователю возможности sudo su - <anotheruser> через /etc/sudoers файл, или позволяя вашему пользователю sudo для root.

Та же опция группы

Сначала создайте специальную группу, скажем team_a:

groupadd team_a

Затем установите эту группу для ваших пользователей (скажем, user1 и user2). По умолчанию каждый пользователь создается в новой группе с тем же именем, что и пользователь. Вы зададите team_a в качестве основной группы, а отдельные группы оставите в качестве дополнительных групп:

for user in user1 user2; do usermod -g team_a $user; usermod -a -G $user $user; done

Затем обновите разрешения для дома пользователя user2, предоставив полный доступ всем членам группы team_a , к папке и любым файлам и папкам, содержащимся в ней, рекурсивно; это позволит любому члену team_a ACCESSING user2 «домашней папки и файлов с, но вы не предоставлением доступа на любых других пользователях (например , следующий не предоставляет доступ к членам team_a вашего user1 ы домой папки):

chmod -R g+rwX ~user2

Обратите внимание, что user2 может удалить эти разрешения в любое время или создать новые файлы без предоставления прав доступа группе.

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

echo "umask 002" >> ~user2/.profile

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

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

Установка user1 также входит в группу по умолчанию user2 :

usermod -a -G user2 user1

Предоставление доступа членам группы user2 к домашней папке user2 :

chmod g+rwX ~user2

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .