/etc/sudoers를 사용하여 일반 사용자가 서비스를 다시 시작하도록 허용

/etc/sudoers를 사용하여 일반 사용자가 서비스를 다시 시작하도록 허용

kado-demo.service일반 사용자( kado)가 비밀번호를 입력하지 않고도 다시 시작할 수 있는 서비스( )가 있습니다 .

내가 만들고 /etc/sudoers.d/user_restart추가한

kado ALL=NOPASSWD: /bin/systemctl restart kado-demo.service

권한:

-r--r-----   1 root root   585 Mar  5 10:47 user_restart

이제 사용자 k로서 주어진 명령을 실행할 수 있지만 이런 일이 발생합니다.

/bin/systemctl restart kado-demo.service
 ==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
 Authentication is required to restart 'kado-demo.service'. 
 Multiple identities can be used for authentication:
  (...)

파일을 추가하기 전과 동일한 결과입니다.

포함/etc/sudoers

#includedir /etc/sudoers.d

그리고 파일 내용 user_restart/etc/sudoers.

아이디어가 부족해요...

답변1

적용 하려면 sudoers실제로 를 사용해야 합니다 sudo. :) 하다:

sudo systemctl restart kado-demo.service

그리고 비밀번호를 묻지도 않습니다.

sudo을 사용 하지 않으면 systemctl다시 사용으로 돌아갑니다.폴킷승인을 위해.

답변2

일반 사용자 start또는 restart서비스를 허용하려면 다음을 수행하십시오.

sudo visudo 

userB ALL=NOPASSWD: /bin/systemctl restart serviceA.service, /bin/systemctl stop serviceA.service, /bin/systemctl start serviceA.service, /bin/systemctl status serviceA.service

관련 정보