作业5:默认权限-Linux系统论坛-计算机网络技术-艺兴技术分享

作业5:默认权限

任务详细

假设umask分值为:003 ,在这个情况下创建的文件或目录的权限是怎么样的?
请大家推出,正确的计算方法。

第一种方法(数学方向的办法)

答案(不保证完全正确)

如果 umask 值为 003,那么新创建的文件夹权限将会是 777-003=774,新创建的文件权限将会是 666-003=664(因为 3 是奇数,所以直接加 1 变为 664)

解析

umask 值是用来掩盖文件或目录权限的一些位,以确定新创建的文件或目录的默认权限。默认情况下,文件的权限为 666,目录的权限为 777。如果 umask 值为 003,则掩盖了文件或目录权限中的 3 位,即掩盖了其他用户(组或其他)的写权限。因此,新创建的文件夹权限将会是 777-003=774,新创建的文件权限将会是 666-003=664(因为 3 是奇数,所以直接加 1 变为 664)。这意味着,新创建的文件夹只有所有者可以写入,而新创建的文件只有所有者和所属组可以写入。

为什么不能是奇数?

在 Linux 中,文件和目录的权限是由三个数字表示的,分别代表所有者、所属组和其他用户的权限。每个数字的范围是 0 到 7,其中 0 表示没有权限,1 表示执行权限,2 表示写权限,3 表示写和执行权限,4 表示读权限,5 表示读和执行权限,6 表示读和写权限,7 表示读、写和执行权限。

umask 值是用来掩盖文件或目录权限的一些位,以确定新创建的文件或目录的默认权限。umask 值的每个数字也必须是 0 到 7 的范围内的数字。如果 umask 值中某个数字是奇数,那么在计算新创建文件或目录的权限时,这个数字会被截断为偶数。这是因为 Linux 中的 umask 值只能掩盖权限位,而不能增加权限位。因此,umask 值中的奇数会被截断为偶数,以确保新创建的文件或目录的权限不会超出默认权限的范围。

 

 

 

请登录后发表评论

    没有回复内容