[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Общая папка для нескольких пользователей



Кубашин Александр Сергеевич -> debian-russian@lists.debian.org  @ Tue, 14 Aug 2012 08:42:38 +0400:

 КАС> Две простых ситуации:

 КАС> 1) Один компьютер с несколькими пользователями, хочется иметь
 КАС> общие файлы: музыка, фотографии и т.д. Каждый из пользователей
 КАС> должен иметь возможность изменять/удалять/добавлять любые файлы в
 КАС> этот каталог.

 КАС> 2) Есть внешний жёсткий диск (или флэшка) который должен свободно
 КАС> переносится между несколькими Linux-компьютерами. Естественно, что
 КАС> пользователи на них могут быть разными, а право
 КАС> удалять/добавлять/изменять файлы должно быть у всех.

 КАС> Файловая система в обоих случаях родная для Linux (пусть будет
 КАС> ext4). Даже если на корневую папку дать права 777, то,
 КАС> по-умолчания, umask=022 (или 002 в лучшем случае) и каждый вновь
 КАС> созданный файл имеет право редактировать только владелец. Менять
 КАС> всем umask не всегда возможно (случай с флэшкой), да и не
 КАС> безопасно в общем случае.

Безотносительно к вопросу "зачем именно так?", который, да, возникает,
umask=2 сделать возможно и вполне безопасно всегда.  Если к этому либо
опция grpid при монтировании, либо chmod g+s на директорию, то файлы в
ней будут создаваться с той группой, к которой принадлежит директория.
Впрочем, cp -a, rsync -a etc. радостно положат на группу, если запущены
от рута, и на права в любом случае.

В общем случае задача сделать "всё доступно всем" на юниксовой файловой
системе в моей практике проще всего решалась демоном, который типа раз в
минуту просматривал, что в подведомственных директориях не ugo+w, и
ставил туда +w.  (Тупо делать chmod -R плохо тем, что это трогает ctime
даже если фактически не меняет права.)

 КАС> Пока единственный вариант, который пришёл в голову,
 КАС> воспользоваться Posix ACL: setfacl -m d:o:rwX <путь к папке>
 КАС> (т.е. в ACL по-умолчанию задать права: rwx для всех
 КАС> пользователей).

Что-то по-моему acl не могут быть свободнее, чем стандартно
установленные permissions, нет?


Reply to: