权限如何制作文件夹 undeleteable?

分享于 

2分钟阅读

电脑

  繁體 雙語

问题:

在 FreeNAS ( FreeBSD ) 上。"。"。我正在试图制作一个文件夹'undeleteable'。

我作为 root 登录。 我创建了一个名为 test的文件夹,并将它的chmod 设置为 700 (rwx------)。 所有者是 root,组是 wheel

然后作为名为 john的用户登录,这是组 bbstaff --的一部分,我可以重命名和删除文件夹 test。 那是不是不可能?

我认为 w 权限阻止重命名。


回答 1:

sledgehammer解决此类问题的方法是使目录不可变。 这应该非常小心,因为它不是一个很常见的操作,因这里如果你在目录中保留文件 behind 是很好的。


#/some/directory/VAR_HAS_BEEN_MADE_IMMUTABLE.WARNING



一旦你做到了:


# chflags schg/some/directory/var



你会发现它不再可以移动,删除或者改变,即使是由 root,直到你把旗帜倒转。

请注意,这是对linux命令 chattr +i的BSD方法

http://www.cyberciti.biz/tips/howto-write-protect-file-with-immutable-bit.html


回答 2:

如果你想让它在父目录中 setting,Google提供了很多答案,它只允许你在父目录中设置 sticky,这只允许目录所有者删除。

chmod +t/some/dir/ParentDir

查看 http://en.wikipedia.org/wiki/Sticky_bit的用法部分,了解有关Sticky位的更多信息"

这一个也使用了 sticky。

第三,这个页面说"当一个目录被粘帖时,它会添加一个特殊的安全特性。 除非用户拥有文件,否则它防止他人删除或者重命名目录中的文件。"。

这是你的解决方案。



相关文章