文件权限的粒度细化程度如何?

我知道有些产品和工具需要非常细致的权限,但底层文件系统呢? 在一个相关的问题中 ,我问了关于文件系统的问题 ,而不是本地对NTFS进行权限支持的粒度。

经典的Unix权限,读|写|执行user | group | other,都很好。 但是,当用户是多个组的一部分时,他们似乎失败了,并且一个文件需要被他所在的两个组访问,但是没有其他人(在这种情况下rw-rw-r--是“坏的” )。 可以创build符号链接,其中另一个组可以读取它,或者可以创build“父”组来保存用户所在的两个文件,并将文件所有权设为user:parent而不是user:boy ,因为那样user:girl组看不到它。

你看到/实现了什么好的解决方法?

我认为NTFS的平衡几乎完全正确,有一个好的,简单的基本设置选项,但也有可能深入潜水,但只有在需要的时候。 我总是发现Unix系统过于简单化(尽pipe这可能是由于Unix作为程序员的操作系统从70年代传承而来,而不是故意的缩写)的结果,而不是一个风扇黑客要解决这些限制。 我对哈克解决方法的经验是,他们倾向于演变成关键业务技术策略,而实际上并没有真正改变。

为了我个人的理智,权限只适用于目录级别。 所以严格来说,我认为任何“文件权限”都是非常细微的,我尽可能地避免使用它们。

这样做,我表示歉意,但我感到困惑

“当一个用户是多个组的一部分时,并且两个组都需要访问一个文件。”

正如你所说,经典的Unix权限不允许一个“文件”被多个组所拥有。 难道你不能只用组成“两个组”的用户创build一个额外的组,并将该组设置为保存文件的目录的组?

例如

 # ls -laZ . drwxr-xr-x root parent . <snipped for clarity ignore> drwxrwx--- root boy boy drwxrwx--- root parent common drwxrwx--- root girl girl # tail /etc/group parent:x:8525:b1,b2,crossdresser1,g1,g2 boy:x:8526:b1,b2,crossdresser1 girl:x:8527:g1,g2,crossdresser1 

这是否适合您的情况? 这是一个很好的解决方法吗? 这是我多年来所做的,我很想知道它是否好。 🙂