SELinux를 사용할 수 없는 경우에도 /proc/[pid]/attr 디렉토리가 항상 생성됩니까?

SELinux를 사용할 수 없는 경우에도 /proc/[pid]/attr 디렉토리가 항상 생성됩니까?

표준 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에서 제공하는 일부이므로 변경할 수 없는 내장 동작으로 간주될 수 있습니다. 커널을 사용자 공간으로.

관련 정보