![Как предоставить общий доступ к файлам/папкам между пользователями на одной машине Linux?](https://rvso.com/image/668795/%D0%9A%D0%B0%D0%BA%20%D0%BF%D1%80%D0%B5%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D1%82%D1%8C%20%D0%BE%D0%B1%D1%89%D0%B8%D0%B9%20%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%20%D0%BA%20%D1%84%D0%B0%D0%B9%D0%BB%D0%B0%D0%BC%2F%D0%BF%D0%B0%D0%BF%D0%BA%D0%B0%D0%BC%20%D0%BC%D0%B5%D0%B6%D0%B4%D1%83%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F%D0%BC%D0%B8%20%D0%BD%D0%B0%20%D0%BE%D0%B4%D0%BD%D0%BE%D0%B9%20%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D0%B5%20Linux%3F.png)
У нас более 2500 пользователей, использующих тонкие клиенты Linux с их домашним каталогом на общем NFS. Мы хотим, чтобы пользователи имели функциональность обмена файлами/папками, как в Windows.
Пользователи не привязаны к какой-либо конкретной машине, поэтому сопоставление IP-пользователя отсутствует. Поэтому CIFS/SMB не вариант. (Учитывая, что все файлы находятся на одной физической машине, это кажется накладными расходами в данном масштабе)
Я попытался создать символическую ссылку на общий каталог исходного пользователя внутри домашнего каталога конечного пользователя (или общего каталога). Но, поскольку домашний каталог имеет разрешение 700 в нашей настройке, общий каталог (хотя у него и ослабленные разрешения) недоступен для пользователя. Я не знаю, правильный ли это подход.
Предложите, пожалуйста, хороший способ эффективной реализации этой идеи.
PS: Все системы работают на Linux/Ubuntu. Файловый менеджер — Thunar (можно изменить, если нужно)
PS2: Я могу написать довольно много скриптов на shell/python/perl и, если нужно для решения, отредактировать приложение Thunar.
РЕДАКТИРОВАТЬ:
Согласно комментарию и ответу, я попробовал ACL. Я установил разрешения с помощью setfacl на сервере NFS, и новые разрешения там отражаются, но то же самое вНЕТотражается на клиентских машинах NFS, когда я проверяю с помощью getfacl.
NFS-сервер# setfacl -Rm u:akila:rwX /nfshome/jp/shared
NFS-сервер# getfacl /nfshome/jp/shared
# файл: nfshome/jp/shared
# владелец: jp
# группа: пользователи
user::rwx
пользователь:akila:rwx
group::rwx
mask::rwx
other::rx
------------
NFS-Client> getfacl /nfshome/jp/shared
# файл: nfshome/jp/shared/
# владелец: jp
# группа: пользователи
user::rwx
group::rwx
other::rx
решение1
Как уже предлагалось, вы можете использовать ACL для настройки такой вещи или создать sticky bit filsystem/folder (например, /tmp). Это в том случае, если вы хотите, чтобы все видели данные друг друга, но при этом сохраняли отдельные разрешения.
Если вы не хотите сохранять отдельные разрешения и все, что вам нужно, это предоставить общий каталог/общий доступ всем вашим пользователям, то нет ничего проще. Вы можете просто создать локальную учетную запись владельца общего каталога (домашнюю для локального пользователя) и разрешить всем пользователям выполнять sudo в этой учетной записи. Sudoers — ваш лучший друг в этом случае, нет ничего проще.