파일에 SystemD 장치 파일에 대한 적절한 권한/소유권이 있는지 어떻게 확인합니까?

파일에 SystemD 장치 파일에 대한 적절한 권한/소유권이 있는지 어떻게 확인합니까?

기본적으로 제목. 어떤 방법이 있나요? 아니면 어쨌든 이상한 방식으로. 내가 아는 한 "ConditionPermissions=", "ConditionOwnership=" 또는 이와 유사한 것은 없습니다.

답변1

systemd 서비스를 시작하기 전에 특정 파일 권한이나 소유권을 확인하려면 이 예에 표시된 것처럼 systemd 단위 파일에서 스크립트를 실행할 수 있습니다. 여기서 파일에 644와 다른 권한이 있는지 확인합니다.

[Service]
ExecStartPre=/bin/bash -xc 'stat -c %a "myfile" != '644' && exit 1 || exit 0'

ExecStartPre가 오류를 반환하면 나머지 시작 프로세스가 중단됩니다.

일반적으로 이 접근 방식은 안전하지 않은 것으로 간주되며 가장 좋은 접근 방식은 특정 조건을 통해 권한을 확인하는 대신 권한을 설정하여 올바른지 확인하는 것입니다.

관련 정보