我想将一个文件的权限设置为所有人都可以编辑、查看、删除,应该设置什么权限值呢?

我想将一个文件的权限设置为所有人都可以编辑、查看、删除,应该设置什么权限值呢?

有人专门为首席执行官保留了一个通用报告模板。既然文件必须是所有人都可编辑、可查看、可删除,那么他应该设置什么权限值呢?

我的第一个假设是读取权限将使其可见,写入权限将使其可由任何人编辑和删除。我需要一些指导以确保我走在正确的道路上。

我的选择是:

chmod 777
chmod 755
chmod 700
chmod 600

答案1

你关于阅读和写作的看法是正确的,但有一个警告(见下文)。不过,对于可删除性,这取决于对包围目录,而不是文件本身的任何属性。 (如果目录设置了“粘性位”,情况会更复杂,但这可能与这里无关。)

777 模式没有多大意义,因为执行该文件没有意义。您想要的世界可写性和可读性模式是 666。

(注意第一句话:为了能够对文件执行任何操作,您还必须能够访问它,这需要对路径上的所有目录进行“x”访问。)

答案2

如果文件必须可供任何人查看、编辑和删除,则您需要 666 模式 ( chmod 666)。请注意,正如 @cind 所暗示的,包含该文件的目录应该是模式 777;读权限(r)列出目录中的文件,写权限(w)删除其中的文件,执行权限(x)进入目录。通过完整路径的父目录只需要执行权限。

但请注意,这将授予对任何人在系统上有一个帐户。您可能想使用ACL微调对文件的访问。

还有,你不会知道WHO进行了哪些修改,或者谁删除了该文件 - 除非您设置auditd这样做,但这似乎有点过分,为此目的需要使用版本控制系统,例如git会工作得更好。

相关内容