Среда: сервер - Ubuntu (на данный момент вер. 13) Клиенты - блоки Windows 8
Мы настраиваем блок Samba-NAS, на котором запущен Ubuntu в офисе, команда требует от системы установить следующую систему. 1. Владелец поместит файл в папку, которую может удалить только владелец. 2. Другие пользователи могут изменять содержимое каталога (фактически процесс, принадлежащий другим пользователям на рабочем столе Windows, будет обращаться к этим файлам и изменять его содержимое). Но они должны быть в состоянии удалить его.
Я исследовал chattr и sticky bit, но не смог найти комбинацию, чтобы заставить его работать.
Диски, где файлы, которые будут создаваться / редактироваться, находятся на некорневых дисках и монтируются в каталог mnt / disk.
Я играл бы с идеей "Владельца Создателя" по сравнению с "другими пользователями" полномочия, и вместо полномочий файлов в некоторой папке идут для папок/директоров Creator Owned и возможно создают различные "обменные" файлы некоторые читаемые, некоторые перезаписываемые. Это зависит от того, чего Вы на самом деле хотите достигнуть.
SElinux может помочь также, но кажется, что комбинация SElinux и Samba повысилась бы больше вопросов, чем решают их. Предельная низкая черта: применение большего количества правил создает больше причуд, которые можно было легко пропустить.
Мой опыт с этим видом проблем показывает, что, если Вам нужен более мелкомодульный доступ, чем ОС/файловая система, позволяет, Вы, чтобы сделать это часто более мудры думать о пользовательской модели обеспечения безопасности и записать приложение, которое имеет систему доступа, в которой Вы нуждаетесь. Возможно, используйте базы данных.
мне также любопытно, если бы кто-то еще разрешил эту проблему некоторым приемлемым способом и если он или она сделал то, что было бы концептуальными границами.
вот вопрос, который побеспокоил бы меня: если бы кто-то еще может отредактировать мой файл (эффективно способность удалить целое содержание) - каково было бы различие между этим и на самом деле удалением файла?