我有两台机器,一台基于 Intel 的标准 Ubuntu 和一台 Jetson Xavier,它们都有一个/proc/self/attr/current
文件。然而,Jetson电脑上的似乎不起作用:
以下是我基于标准 Intel 的 Ubuntu 上的输出:
$ xxd /proc/self/attr/current
00000000: 756e 636f 6e66 696e 6564 0a unconfined.
但是,我在 Jetson(基于 ARM)上遇到了错误:
$ xxd /proc/self/attr/current
xxd: Invalid argument
环顾四周,它似乎是一个属于 SELinux 扩展的文件,我假设它没有安装在 Jetson 上。但是,/proc
如果该文件不可用,为什么会出现在下面呢?
答案1
中的条目/proc/self/attr
最初是为 SELinux 添加的,但它们并非特定于 SELinux — 它们用于各种安全模块。/proc/self/attr
启用如果CONFIG_SECURITY
已启用;如果未选择安全模块,则尝试访问该目录中的任何文件将返回EINVAL
“无效参数”。
我不知道为什么文件被列出,即使它们无法访问;对于这些特定文件来说总是如此,因此它可能被视为内置行为,不可更改,因为它实际上是内核向用户空间提供的 API 的一部分。