Я хочу предоставить пользователю (имя пользователя: eddie) доступ ко всем каталогам (с модом 770), которые доступны для root (самому себе). Я делаю это так:

groups root
(here comes a list of groups in which root user is)

usermod -a -G group1 eddie
usermod -a -G group2 eddie
usermod -a -G group3 eddie
...

Все 'group1', 'group2', 'group3' видны в списке групп пользователя root.

Тем не менее, после добавления 'eddie' во все вышеупомянутые группы (включая группу 'root') он все равно не может записывать в каталоги, общие для пользователя root.

Я сделал это неправильно?

1 ответ1

3

Владелец файла состоит из двух полей, одного для пользователя и одного для группы. Если вы выполните команду ls -l вы увидите как пользователя, так и группу в выводе. Поле группы в режиме файла контролирует доступ для пользователей в группе, которой принадлежит определенный файл.

Не имеет значения, какие группы root нужны для вашей проблемы. Имеют значение только поле владельца файла, к которому вы хотите предоставить доступ, и членство в группах другого пользователя. Если файл принадлежит root:somothergroup и имеет режим 770 , paul может получить доступ к этому файлу, только если paul находится в somothergroup .

Если вы хотите поделиться определенными файлами, я бы предложил создать группу, в которую вы добавили бы eddie , и изменить владельца файлов для этой группы. (Например, chgrp -R somegroup somedirectory для рекурсивного изменения владельца всех файлов в этом каталоге.)

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

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