LINUX.ORG.RU
решено ФорумAdmin

Очень странное желание. Множественные владельцы одного файла/директории.

 , , ,


0

1

Привет всем!

Надобно это для совместной разработки от разных пользователей одного проекта.

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

Да, я в курсе про chmod g+s на директорию и ACL (хотя может не разобрался?).
Всё равно не удобно. Нужно не просто иметь доступ к файлам/поддиректориям директории на чтение/запись/выполнение (в комбинациях по необходимости), но и иметь возможность менять права на файлы от имени любого пользователя, как если бы он был владельцем.
Вот со сменой прав не получается.

Работать от одного пользователя не удобно. Присвоить им один UID - изврат ещё больший, чем то, о чём я пишу.

Я знаю, что штатно такой функциональности нет и у каждого объекта ФС есть только один владелец. Но, может быть, есть обходные пути через какое-нибудь хитрое монтирование с FUSE?
Файловая система ext4.

-----------------------------
Всем спасибо. Нашёл bindfs, который вполне подходит.

★★★★★

Последнее исправление: ls-h (всего исправлений: 1)

Юзеров в группу, chown группе и chmod какой надо. Или я не так понял?

Deleted
()

Можно пример, того что хочешь? Судя по описанию ACL полностью покрывает твои нужды.

sparks ★★★★
()
Ответ на: комментарий от sparks

Можно пример, того что хочешь?

Меня права чужого файла. Например, один пользователь скрипт написал/что-то скомпилировал, исполняемым не сделал. Другой исполняемым сделать не может. Да, мелочь. Но хотелось бы этого избежать.

ls-h ★★★★★
() автор топика
Ответ на: комментарий от ls-h

Да, действительно. В качестве workaround можно использовать такой трюк, создать юзера, и сделать его владельцем всех файлов. Через sudo разрешить всем пользователям выполнять sudo от имени этого пользователя.

Добавить всем остальным пользователям

alias setfacl='sudo -u owner setfacl'

sparks ★★★★
()

Нагуглилась штука bindfs. Возможно это то, что надо, разбираюсь.
Вот бы ещё тоже самое без FUSE, чтобы работало быстрее...

ls-h ★★★★★
() автор топика
Ответ на: комментарий от ls-h

Я нагулил изящное решение. Процессу для того чтобы он мог изменить права доступа или ACL нужно иметь CAP_FOWNER. Его можно установить для setfacl утилитой setap. В дебиане пакет libcap2-bin.

Линк на проект: https://sites.google.com/site/fullycapable/

sparks ★★★★
()
Ответ на: комментарий от sparks

Я нагулил изящное решение.

Тоже вариант. Спасибо!

ls-h ★★★★★
() автор топика
Ответ на: комментарий от DonkeyHot

Да ладно.

Имелось в виду прозрачно, без дополнительных телодвижений.
Смена прав может происходить и из какого-то скрипта/приложения.

ls-h ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.