使 unix 上的目录仅由我读取、写入、执行,而其他任何人都不能执行?

使 unix 上的目录仅由我读取、写入、执行,而其他任何人都不能执行?

使我创建的目录及其所有内容仅可由我读取/写入/执行,而其他任何人都不能读取/写入/执行的正确方法是什么?

这样就足够了吗:

chmod g-rx mydir/

这应该会使除了我之外的所有人都无法读取/执行它,对吗?

另外,上面与什么不同?

chmod a-rx mydir/
chmod u+rx mydir/

谢谢。

答案1

你可以一直明确

$ chmod 700 mydir

其中“700”被解释为一个八进制数,指定要设置的位rwxrwxrwx(针对用户|组|每个人),以便700 = rwx------

答案2

此命令

chmod g-rx mydir/

删除组的读取和执行权限。它将保留其他用户(所有人)的所有权限,并保留组的写入权限。

它不同于:

chmod a-rx mydir/
chmod u+rx mydir/

因为a-rx会影响所有三个权限。但是,它仍为组或其他方保留写入权限。

最好的方法是明确设置所有权限:

chmod 0700 mydir/

7 是二进制的 111,其中每位分别代表读取、写入和执行,在该位置代表用户(文件所有者)。 中的四个位置分别0700代表"special"权限、user权限、group权限和other权限。

使用它来帮助转换与权限相关的数字以及读、写、执行标志。

http://permissions-calculator.org/

相关内容