polkit에 대한 .pkla 규칙 설정

polkit에 대한 .pkla 규칙 설정

루트가 아닌 사용자로 실행되는 애플리케이션 중 하나에서 DBus를 사용하여 시스템 서비스를 시작하고 싶습니다 myuser. 이렇게 하려면 polkit 0.105를 사용하여 PolicyKit을 설정하고 다음 .pkla 파일을 추가해야 합니다./etc/polkit-1/localauthority/50-local.d

Identity=unix-user:myuser
Action=org.freedesktop.systemd1.manage-unit-files;org.freedesktop.systemd1.manage-units
ResultActive=yes
ResultInactive=yes

그러나 이는 어떤 면에서는 도움이 되지 않습니다. 왜냐하면 시작 시 작동하는 방식으로 실행될 때 Permission denied여전히 DBus에서 오류가 발생하기 때문입니다.myuserroot

지금까지 내가 polkit에 대해 이해한 것은 실제로 그것을 설정하는 방법입니다.

또한 나를 놀라게 하는 것은 실행 시 pkaction아무것도 반환하지 않는다는 것입니다.

추가 설정이 필요 합니까 polkit? 방금 apt-get우분투 19.04 상자를 통해 설치했습니다.

답변1

org.freedesktop.systemd1.policy에서:

action id="org.freedesktop.systemd1.manage-units"
action id="org.freedesktop.systemd1.manage-unit-files"

줄을 바꿔서 해보세요

<allow_active>auth_admin_keep</allow_active>

통과:

<allow_active>yes</allow_active>

관련 정보