Intereting Posts
разрыв с программой, запущенной в интерактивном сеансе в окне экрана Почему я хочу ограничить размер сегмента «.data»? понимание LAMP: linux apache mysql и php сомнения относительно использования split в awk Как открыть почтовый ящик при запуске (нео) Mutt? В чем разница, если я начинаю bash с «/ bin / bash» или «/ usr / bin / env bash»? Постоянно печатать последнюю строку файла в одну строку на терминале Ошибка сетевого диспетчера – «не может отправить заявку на маршрутизатор» Что делает зеркало в зеркалировании LVM? Установить маску сигнала дочернего процесса в Bash Почему может быть создана программная ссылка на каталог с или без косой черты? Почему на выходе моей команды есть пустые строки ?: find ~ / x / y / | shuf> ~ / Desktop / z.txt как я могу извлечь имя SubDir 4 deep & put в использование Var 4 позже? mount.cifs не может использовать тот же файл учетных данных, который использует smbclient проблема с двойной загрузкой Debian

Unix: есть ли способ сделать файл доступным для записи, но не удаляемым, не перемещаемым и не копируемым?

У нас есть несколько «живых документов», к которым обращаются несколько человек. Есть ли способ в unix сделать файл доступным только для чтения и записи, но не для перемещения, копирования или удаления?

objective этого – убедиться, что в сети есть только одна копия файла.

Предполагая, что файл и каталог, в котором он находится (его родительский каталог), принадлежит совершенно отдельному пользователю и принадлежит к совместной группе …

Если сделать родительский каталог файла недоступным для записи для группы, это сделает файл недоступным для удаления членами этой группы. Имея файл, не подлежащий удалению членами группы, вы гарантируете, что файл не может быть перемещен из родительского каталога этими членами группы.

Вы не можете сделать файл читаемым и не копируемым, поскольку чтение файла по сути позволяет пользователям копировать его.

«Другие» не будут иметь прав доступа к файлу или родительскому каталогу.


В идеале вы должны использовать некую форму системы, возможно, поддерживаемую git , которая позволит людям совместно работать над файлом контролируемым образом. Это позволит упростить контроль доступа, удаленный доступ, а также контроль версий.

На Solaris (на ZFS) вы можете позвонить:

 chmod S+cu file 

На FreeBSD вы можете позвонить:

 chflags sunlink file 

На Linux, мог бы позвонить

 chattr +u file 

Во всех случаях вам нужно быть суперпользователем, чтобы установить флаг.

Linux не поддерживает это в файловых системах ext *.