В Ubuntu я хочу, чтобы пользователь user1 мог читать / писать / выполнять / удалять все файлы / папки пользователя user2
Я поместил их в одну группу, но это не помогает,
Как правильно подойти к этому?
Спасибо,
Помещения обоих пользователей в одну группу недостаточно: по умолчанию файлы не доступны для групповой записи, если явно не указано иное (с chmod g+w
). Чтобы изменить разрешения по умолчанию для большинства вновь создаваемых файлов, добавьте строку umask 002
к ~user1/.profile
. Также многие программы ограничивают файлы, которые обычно должны оставаться закрытыми (файлы паролей, почтовые ящики и т. Д.), Только для чтения пользователем; umask на это не влияет.
В большинстве случаев можно использовать списки контроля доступа. Во-первых, убедитесь, что файловая система, содержащая домашний каталог user2, смонтирована с acl
вариант (по умолчанию в Ubuntu 10.04 он отключен). Установите acl
пакет. Затем выполните следующие команды (предупреждение, вводимое непосредственно в браузере), чтобы предоставить пользователю user1 полный доступ к файлам в домашнем каталоге пользователя user2 и предоставить этот доступ по умолчанию вновь созданным файлам:
setfacl -m user:user1:rwx -R ~user2
setfacl -d -m user:user1:rwx -R ~user2
Если user2 хранит файлы вне своего домашнего каталога, примените эту команду также к другим каталогам.
Наконец, предоставление user1 такого прямого доступа может быть не лучшим методом решения основной проблемы. Возможно, будет более разумным предоставить пользователю user2 доступ только к тем файлам, которые действительно должны быть общими (либо с использованием общей группы, либо с использованием ACL). Также рассмотрите возможность предоставления пользователю user2 разрешения на запуск программ от имени пользователя user1 через sudo (run visudo
и добавьте строку user1 ALL = (user2) ALL
).
Вам нужно назначить группу, в которой они оба находятся, для всех файлов пользователя 2.
chgrp usergroup somefile
Затем вам понадобятся разрешения группы, чтобы иметь rwx, поэтому:
chmod g+rwx somefile
Где somefile - это файл пользователя2
Пользователь User1 должен быть членом группы, которая назначена группе, имеющей rwx (7, как и все для пользователя и другого разрешения, но 7 указано для разрешения группы).
Это помогает?