我刚刚安装了 nemo,并且正在显示八进制权限字段。权限是 40755 和 100755 之类的。我熟悉最后三位数字 (755),我假设这些是所有者、组和其他所有人的 rwx 权限。前缀权限是什么 - 在我的示例中是 40 和 100?
答案1
它们是文件类型。10 是 fifo,40 是目录。来自man 2 stat
:
The following flags are defined for the st_mode field: S_IFMT 0170000 bit mask for the file type bit fields S_IFSOCK 0140000 socket S_IFLNK 0120000 symbolic link S_IFREG 0100000 regular file S_IFBLK 0060000 block device S_IFDIR 0040000 directory S_IFCHR 0020000 character device S_IFIFO 0010000 FIFO S_ISUID 0004000 set-user-ID bit S_ISGID 0002000 set-group-ID bit (see below) S_ISVTX 0001000 sticky bit (see below) S_IRWXU 00700 mask for file owner permissions S_IRUSR 00400 owner has read permission S_IWUSR 00200 owner has write permission S_IXUSR 00100 owner has execute permission S_IRWXG 00070 mask for group permissions S_IRGRP 00040 group has read permission S_IWGRP 00020 group has write permission S_IXGRP 00010 group has execute permission S_IRWXO 00007 mask for permissions for others (not in group) S_IROTH 00004 others have read permission S_IWOTH 00002 others have write permission S_IXOTH 00001 others have execute permission
答案2
备注/更正:7 个位置给出了八进制权限:0000000 我们称之为 gfedcba。
位置“a”代表“其他”,是权限的总和:1(执行或进入目录)、2(写入)和 4(读取)。例如:7 是 4+2+1;6 是 4+2 ...
位置“b”相同,但针对的是“组”
位置“c”代表“所有者”
位置“d”表示特殊字符的总和:1 表示粘性(如果设置了此选项,则只有所有者可以重命名或删除文件,而不管其他权限如何)2 表示强制组(如果文件的所有者被允许在该目录中“写入”,则新文件的组将是该目录的组)4 表示强制所有者(如果文件的实际所有者(创建者)在目录中拥有“写入”权限,则新文件的所有者将是该目录的所有者)
位置“e”到“g”代表“节点”类型:(001 是 FIFO)(002 是字符设备)004 是目录 006 是块设备(您可以在 /dev 中找到一些)010 是文件 012 是符号链接..(参见先前回复中的列表)