我想/sys/power/state
通过 ACL 为我的 UID 添加写访问权限,这样我就不需要使用须藤或者任何 setuid 程序可以让我的工作站进入睡眠模式,这可能吗?我按照手册尝试了一下,结果出现了这个错误:
➜ ~ sudo setfacl -m u:nelson:w /sys/power/state
setfacl: /sys/power/state: Invalid argument
看起来发生的事情并不是我所想的那样,
有人能给我解释一下吗?我不明白为什么这个setfacl
命令表现得像是在向 FIFO 写入内容
答案1
/sys
可能无法对任何内容设置 ACL 。sysfs
文件系统最初基于 ramfs,不支持扩展 ACL。
我对 setfacl 命令进行了 strace 操作,在返回 EINVAL 的调用之前setxattr
,有一个getxattr
调用给出了不支持该操作的错误:
getxattr("/sys/power/state", "system.posix_acl_access", 0x7fff4ab593c0, 132) = -1 EOPNOTSUPP (Operation not supported)