기본 사용자 ubuntu
가 암호를 묻지 않고 특정 서비스를 실행할 수 있기를 원합니다 .
구체적으로 systemctl restart unicorn_my_app.service
.
다음 지침에 따라 새로 작성된 그룹에 사용자를 추가 하십시오 .ubuntu
LimitedAdmins
$ getent group LimitedAdmins
LimitedAdmins:x:1001:ubuntu
다음 텍스트를 포함하는 디렉토리 에 limitedadmins
(를 사용하여 sudo vim
) 새 파일을 작성했습니다 /etc/sudoers.d
.
%LimitedAdmins ALL=NOPASSWD: /etc/init.d/unicorn_ofn_america restart, /etc/init.d/unicorn_ofn_america start
나는 또한 시도했다 :
%LimitedAdmins ALL=NOPASSWD: /bin/systemctl/unicorn_ofn_america restart, /bin/systemctl/unicorn_ofn_america start
(그리고 /bin/systemd
)
의 내용은 (또는 ) /etc/sudoers/
으로 확인 된 기본값입니다 .sudo visudo
sudo cat /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
해시 로그인 #includedir
은 주석이 아니라 #include 지시문 구문의 일부입니다 .
그러나 실행 후 여전히 비밀번호 프롬프트가 있습니다. systemctl restart unicorn_my_app.service
서비스는 init.d
디렉토리에 있습니다.
$ ls -l /etc/init.d | grep unicorn
-rwxr--r-- 1 ubuntu ubuntu 1874 Oct 29 06:47 unicorn_my_app
755
앱에서 chmodding 을 시도 했지만 ubuntu
어쨌든 소유하고 있기 때문에 그것이 차이를 가져야한다고 생각하지 마십시오 .
아무런 차이없이 시스템을 재부팅하려고 시도했습니다. 재시작 / 재로드와 같은 단계가 누락 되었습니까?) 뭔가 잘못 구성 했습니까?
또한 명령이 편집 전용 인 것 같아서 vim
새 파일을 만들 때 사용했음을 언급해야합니다 ./etc/sudoers.d
visudo
/etc/sudoers