Я попробовал "chattr + i DIRNAME", это здорово, но я не могу создавать файлы в DIR после chattr. Что еще нужно, чтобы пользователи не могли удалить Каталог?
root@HOST ~] mkdir test
[root@HOST ~] chattr +i test
[root@HOST ~] cd test
[root@HOST ~/test] touch sth
touch: cannot touch `sth': Permission denied
[root@HOST ~/test] cd ..
[root@HOST ~] chattr -i test
[root@HOST ~] cd test
[root@HOST ~/test] touch sth
[root@HOST ~/test]
ОБНОВЛЕНИЕ: важно только удаление каталога, поэтому мне все еще нужно удалить файлы в нем
permissions
files
Гаско Питер
источник
источник
/tmp
и/var/tmp
. Хотя каждый пользователь может создавать файлы там, он / она может удалять только свои собственные файлы / каталоги, но не каталог itselv.Ответы:
Так что же не так с простым chown / chmod ?:
Хорошо, позвольте мне сказать вам, что не так с этим: каждый пользователь имеет все права доступа к каждому файлу в
question
каталоге из-за777
разрешений. Лучшеgroupadd question
mkdir question
chown root:question ./question
chmod 770 ./question
usermod -G group user
Важный трюк здесь заключается в том, что владелец каталога отличается от любого из пользователей, которые попытаются его удалить.
источник
sudo chmod o+t ..
чтобы установитьt
флаг в родительском каталоге.t
Флаг запретит , чтобы удалить файл , который не принадлежит пользователю.t
обычно используется,/tmp
чтобы сделать именно это. Пользователь А не может удалить файлы, принадлежащие Пользователю Б.Создайте файл ".protected" и сделайте как root
После этого вы можете удалить все файлы, кроме
.protected
этого каталога, поэтому этот каталог не может быть удален другим пользователем.источник
должен сделать работу. Вы можете создавать файлы внутри, но вы не сможете их удалить.
источник