文件权限有:
S_IRWXU = S_IRUSR | S_IWUSR | S_IXUSR S_IRWXG = S_IRGRP | S_IWGRP | S_IXGRP S_IRWXO = S_IROTH | S_IWOTH | S_IXOTH
文件类型有:
S_ISREG() // 普通文件 S_ISDIR() // 目录 S_ISCHR() // 字符特殊文件(设备) S_ISBLK() // 块特殊文件(设备) S_ISFIFO() // 管道或 FIFO S_ISLNK() // 符号链接 S_ISSOCK() // 套接字
设置用户ID和设置组ID:
- 实际用户ID、实际组ID,表示实际是谁
- 有效用户ID、有效组ID、附属组ID,用于文件权限检查,执行设置了set-user-ID和set-group-ID位的文件时该进程有效ID不等于实际ID
- 保存的设置用户ID、保存的设置组ID
新文件和新目录的所有权:
- 用户ID=进程有效用户ID
- 组ID=进程有效组ID或所在目录组ID(Linux下由所在目录的set-group-ID位指定)
各种 *at() 函数中参数 fd 是什么:
int fd = open("/root/", O_RDONLY); mkdirat(fd, "abc", S_IRWXU);
时间: 2024-10-14 00:02:52