Как я могу ограничить пользователя в удалении файлов?
Пользователь должен был читать и права записи, но удалить права должны быть отклонены. В Windows та же задача может быть сделана легко, но я не знаю способ сделать это в Ubuntu.
Вам нужен список управления доступом, чтобы сделать это. Пакет называют acl
От статьи:
Список управления доступом (ACL), относительно компьютерной файловой системы, является списком полномочий, присоединенных к объекту. ACL указывает, какие пользователи или системные процессы являются предоставленным доступом к объектам, а также какие операции позволяются на данных объектах. Каждая запись в типичном ACL указывает предмет и операцию. Например, если файл имеет ACL, который содержит (Alice, удалите), это дало бы разрешение Alice удалить файл.
Существует 2 пакета в Ubuntu для поддержания правил для ACL:
Проблема Вы столкнетесь с chmod
это удаляет, и запись считаются тем же: если можно записать в файл, можно освободить его (и таким образом можно удалить содержание).
Btw: 1-й пакет может также справиться с Вашими настройками ;) самбы
Это может быть выполнено путем предоставления пользовательского разрешения записи на файлах только, но не на каталоге. Пользователь не сможет удалить файл из каталога, если у него не будет полномочий 'записи' на каталоге сам.
Обратите внимание, что это будет также применяться на создание файла. Таким образом без разрешения записи на каталоге, пользователь сможет в файлы чтения-записи, уже существующие в каталоге, но не сможет создать или удалить любой файл.
ОБНОВЛЕНИЕ: следующий снимок экрана показывает то, что я пытаюсь сказать:
чтение набора и полномочия записи группе, таким образом, все члены той группы могут читать и записать.
сделайте владельца некоторым другим пользователем, потому что папка принадлежит тому пользователю
установите разрешение этого другого пользователя папки к липкому, только владелец может удалить файлы в папке