Linux 是类 Unix/Unix 类别操作系统中唯一使用“fsuid”和“fsgid”的操作系统吗?

Linux 是类 Unix/Unix 类别操作系统中唯一使用“fsuid”和“fsgid”的操作系统吗?

Linux在权限检查中使用文件系统用户 ID ( fsuid) 代替有效用户 ID ( euid),使用文件系统组 ID ( fsgid) 代替有效组 ID ( )。egid

Linux 是类 Unix/Unix 类别操作系统中唯一使用fsuid和 的操作系统吗fsgid?例如,BSD、macOS、Solaris 等操作系统是否使用fsuidfsgid

答案1

我能找到的所有提及fsuid似乎都在说“仅限 Linux”或类似的内容。

手册页setfsuid(2):

setfsuid()是 Linux 特定的,不应在可移植的程序中使用。

UID设置功能对比不同 Unix 系统的:

setfsuid(uid) 将进程的文件系统 UID 设置为新值。 [...] 仅限 Linux。

正如手册页所述,它fsuid仅用于解决(用户空间)NFS 服务器和旧版本 Linux 中的信号处理规则的潜在问题;它不太可能再被使用了。

相关内容