общая локальная папка для пользователей

vs220
Эта вариация ТС вроде не устроила
Насколько понял, он ее и не пробовал, а если и пробовал, то возможно не совсем верно.
В части ACL , насколько понял, это он пытался применить эту фичу ... но, имхо, простым юзерам нет смысла и использовать ACL ...

А вообще вариантов несколько, просто нужно гуглить ... пробовать и выбрать наиболее подходящий способ.
Ошибки не исчезают с опытом - они просто умнеют
vasek
и не пробовал
https://archlinux.org.ru/forum/post/229191/
vs220, не ужели думаешь, что я все не проверил???
Все работает ... уверен, что ТС что то сделал не правильно, что то где то не прописал и на 100% уверен, что созданные каталоги НЕ УНАСЛЕДОВАЛИ бит SGUID родительского каталога.
Для достоверности, чтобы не быть голословным еще раз провел эксперимент - все проделал в директории root

создана общая директория /SHARE
stat -c%a /SHARE
2777

Создаем в ней дочернюю директорию TEST
mkdir /SHARE/TEST
stat -c%a /SHARE/TEST
2755

Копируем в нее файл
cp ~/wm /SHARE/TEST

меняем этот файл (дописываем в конец строку test)
echo test >> /SHARE/TEST/wm
cat /SHARE/TEST/wm | grep test
test

копируем в /SHARE/TEST другую директорию …. из /etc (без всяких sudo)
cp -r /etc/audit /SHARE/TEST
stat -c%a /SHARE/TEST/audit
2755

удаляем скопированную папку
rm -R /SHARE/TEST/audit
ls /SHARE/TEST/audit
ls: невозможно получить доступ к '/SHARE/TEST/audit': Нет такого файла или каталога

… дальше продолжать думаю нет смысла - все работает
Ошибки не исчезают с опытом - они просто умнеют
vasek
нет смысла - все работает
Ну не работает acl при копировании
Проверьте права на содержимое скопированной папки
umask
0022
stat -c%a /etc/audit/auditd.conf
644
stat -c%a /SHARE/TEST/audit
2755
stat -c%a /SHARE/TEST/audit/auditd.conf
644
su [другой пользоаватель входящий в группу SHARE]
echo test >> /SHARE/TEST/audit/auditd.conf
bash: /SHARE/TEST/audit/auditd.conf: Отказано в доступе

vs220
Ну не работает acl при копировании
…………..
stat -c%a /SHARE/TEST/audit/auditd.conf
644
su [другой пользоаватель входящий в группу SHARE]
echo test >> /SHARE/TEST/audit/auditd.conf
bash: /SHARE/TEST/audit/auditd.conf: Отказано в доступе

тот же вывод
cp -r /etc/audit /SHARE/TEST

stat -c%a /SHARE/TEST/audit
2755
stat -c%a /SHARE/TEST/audit/auditd.conf
644

echo test >> /SHARE/TEST/audit/auditd.conf
tail -n 1 /SHARE/TEST/audit/auditd.conf
test
Ошибки не исчезают с опытом - они просто умнеют
vasek
echo test
от другого пользователя не от того которым папку копировали.
По правам 644 уже видно что доступа группе на редактирование нет
vs220
от другого пользователя не от того которым папку копировали.
По правам 644 уже видно что доступа группе на редактирование нет
пропустил …
vs220
su [другой пользоаватель входящий в группу SHARE]
у меня нет другого пользователя, устанавливать для проверки не хочется (уже снес и эти настройки, не люблю оставлять не нужное ...)

Вот по этому я и не любитель установки всяких групп на директории и манипулирования с правами этих директорий …. очень много нюансов и даже есть отличия в разных системах … нужно хорошо разбираться в этих нюансах, а потому всегда ишещь что по проще.
Даже есть демоны, которые следят за изменениями в директориях, а в Gnome, если не ошибаюсь, вроде бы даже имеется стандартный способ создания таких общих директорий.

PS - а влазить в это капитально нет никакого желания, да и не стоит оно того ...

EDIT 1 - на моих компах в системе всегда только один пользователь, это я и, конечно, root. Иметь другого пользователя для меня нет смысла, но кому очень нужно (из подрастающего поколения) они всегда зайдут и от root, если уж будет такая необходимость ... это обговорено и пароль им для этого не нужен.
Ошибки не исчезают с опытом - они просто умнеют
vs220
от другого пользователя не от того которым папку копировали.
Не поленился создал 2-го юзера и, конечно же, получил желаемый результат (положительный), но пришлось выполнять дополнительные действия.
В принципе, повторюсь, можно это проделать несколькими способами, но зависит от наличия прав и умения пользователя
- способом по феншею - но приходится выполнять дополнительные действия - перед копированием изменением выполнить две команды setfacl (изменить ACL для существующих файлов и добавить измения для новых в определенной директории). Но для этого потребуются права sudo и тогда возникает вопрос - а зачем весь этот огород?
- хакерским способом, временно изменив два значения в одном файле, но опять же нужно sudo и возникает тот же вопрос - а зачем весь этот огород?
Ошибки не исчезают с опытом - они просто умнеют
vasek
нужно sudo и возникает тот же вопрос - а зачем весь этот огород?
Ну ТС вроде и создал тему для подсказки способов без дополнительных действий со стороны юзеров при работе с общей папкой.

Я кроме bindfs ( хоть и fuse но работает быстро ) и файловых без поддержки прав - способов не знаю . Может кто подскажет еще.

Ну а юзкейс у ТС спрашивать надо
vs220
Я кроме bindfs ( хоть и fuse но работает быстро ) и файловых без поддержки прав - способов не знаю . Может кто подскажет еще.
Полностью согласен, имхо самый простой и, похоже, единственный путь, не требующий sudo.
Попробуем разобраться с правами и понять, что и как можно сделать, а для этого посмотрим сначала на это чисто теоретически.

Каждый файл в Linux может принадлежать только одному пользователю/владельцу, который может состоять в нескольких группах.
Каждый файл в Linux может принадлежать только одной группе, которая может содержать несколько пользователей.
Но есть еще и другие, которые не являются владельцем файла, но желают с ним работать - для меня это чужие.
С учетом этого и произведено разграничение прав - устаканено 3 категории прав
- права владельца файла
- права группы
- права других/чужих
Для каждого типа категории устанавливаются типы привилегий (что категории разрешено делать)
- право на чтение (4 бала)
- право на изменение (2 бала)
- право на запуск (1 бал)
А дальше самое интересное - а кто же будет за всем этим следить и устанавливать? - в этом можно утонуть.
Но спецы хорошо придумали, чтобы с этим не заморачиваться все эти привилегии создаются по дефолту, автоматом, при создании директорий и файлов. И возложено это на утилиту umask.
Первоначально полные права на большинство директорий (за исключением особых случаев) определены как 777, а полные права на большинство файлов (за исключением особых случаев) определены как 666.
А дальше самое интересное - при работе с директорией/файлом вступает в работу (точнее на защиту безопасности) umask, который изменяет эти права, точнее уменьшает на заданное значение, следующим образом
- для директорий: 777 - 022 = 755
- для файлов: 666 - 022 = 644
где 022 - это и есть значение umask, на которое уменьшаются полные права. Это значение прописано в одном из системных файлов - оно глобально.
Значение umask можно изменить как глобально, так и локально.

И вот подобрались к самому главному моменту, к значению 644, которое и определяет права файла. Из этого значения видно:
- владелец: может файл и читать и изменять (4+2=6)
- группа: может файл только читать (4=4)
- другой/чужой: может файл только читать (4=4)

Исходя из этого возможно только 2 пути решения проблемы с правами на изменение (а вот способов для каждого пути несколько)
- стать владельцем файла или получить привилегии root для работы
- изменить значение umask на требуемое значение (изменить значение 022 на другое значение). Это можно выполнить или глобально, что не следует делать (дыра в безопасности) или локально, используя setfacl.

Способов может быть несколько, но все требуют от пользователя привилегий root (sudo).
Так что, если уж использовать sudo, то проще всего, имхо, использовать MC (или другой консольный менеджер файлов) …
Или, если нет sudo, то как предложил vs220 - монтирование, bindfs

EDIT 1 - если есть возможность, то можно еще создать отдельный раздел на диске ... хотя место можно найти всегда
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.