Linux
suid 位對設備文件有任何意義嗎?
suid 位對 Linux 中的設備文件有什麼特殊含義嗎?
我相信不是。該位僅用於執行檔。它在 Linux 核心標頭檔中定義為
S_ISUID
. 如果你 grep 這個常量的核心原始碼,你會發現它只用於:
should_remove_suid
函式,用於應該刪除 SUID/SGID 位的 FS 操作,prepare_binprm``fs/exec.c
在準備執行檔以設置 EUID 時使用的函式exec
,pid_revalidate``fs/proc/base.c
用於填充 procfs 的函式,notify_change``fs/attr.c
更改文件屬性時使用的函式,is_sxid``include/linux/fs.h
僅由特定程式碼和XFS
函式使用的函式,GFS``notify_change
- 在文件系統特定程式碼中(當然)
所以在我看來,這個位只在執行文件時使用(從使用者空間的角度來看)。至少在 Linux 上。