読者です 読者をやめる 読者になる 読者になる

てきとうなメモ

本の感想とか技術メモとか

root以外でsystemdサービスを起動

状態確認ぐらいはできるけど、起動はあまりこれといった方法がないように思える。

ユニット定義ファイルを

User=some_user
Group=some_user

にしても、some_userが実行しようとすると

$ systemctl start some_service
Failed to issue method call: Access denied

とエラーになる。

方法の1つとして、sudoersを

Cmnd_Alias SOME_SERVICE = /bin/systemctl * some_service
some_user    ALL=NOPASSWD: SOME_SERVICE

てな感じするとsudo経由で実行可能になる。enable/disableまで実行可能にするのはどうかという話もあるので、厳密にするためにはCmnd_Aliasの部分でコマンドを一件一件指定しないといけないと思うが。