함수(CAP_SYS_TIME)를 사용하려고 하는데 다음 명령을 실행하면 다음과 같습니다.
setcap CAP_SYS_TIME+ep /user/mybinaryprogram
내 시스템에서 다음 오류가 발생합니다.
Failed to set capabilities on file '/bin/date' (Invalid argument)
usage: setcap [-q] [-v] (-r|-|<caps>) <filename> [ ... (-r|-|<capsN>)
<filenameN> ]
Note <filename> must be a regular (non-symlink) file.
내 시스템: Linux t2080rdb 4.1.35-rt41 ppc64 GNU/Linux
Yocto Project SDK 2.0을 사용하여 Linux 이미지를 얻었습니다. bin 디렉토리에서 "ls -la"를 실행하면 날짜가 사실상 심볼릭 링크로 표시됩니다.
제가 수행한 테스트에 따르면 setcap을 시도할 때 항상 동일한 오류가 발생합니다.
문제를 해결했는데 커널이 "보안 레이블"을 활성화하지 않았기 때문에 명령이 작동하지 않았습니다.
답변1
커널에 "보안 레이블"이 활성화되어 있지 않기 때문에 이 명령은 작동하지 않습니다. 커널에 이러한 모듈을 설치하기 위해 다음 명령을 실행했습니다.
$ bitbake -c menuconfig virtual / kernel
활성화하기 위해 메뉴를 탐색했습니다.
- Ext2 확장 속성 및 *Ext2 보안 태그