cron에서 "shutdown -r 5" 명령을 실행하려면 사용자에게 어떤 권한을 부여해야 합니까?

cron에서 "shutdown -r 5" 명령을 실행하려면 사용자에게 어떤 권한을 부여해야 합니까?

Linux의 /etc/crontab에서 실행하는 bash 스크립트가 있습니다.

$ uname -a
Linux mymachine.com 3.4.76-65.111.amzn1.x86_64 #1 SMP Tue Jan 14 21:06:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Bash 스크립트에는 다음 줄이 포함되어 있습니다.

sudo shutdown -r 5

그러나 cron 작업이 실행되면("myuser"라는 사용자로) 머신은 재부팅되지 않으며 대신 로그에서 이 내용을 찾습니다.

[sudo] password for myuser:

이 사용자에게 cron에서 재부팅할 수 있는 기능을 제공하려면 어떻게 해야 합니까? 이 스크립트를 다른 사용자로 실행하는 것은 옵션이 아닙니다.

답변1

/etc/sudoers다음과 같은 줄이 필요합니다 .

myuser ALL = NOPASSWD:  /sbin/shutdown

NOPASSWD부분은 비밀번호를 제공하여 종료 명령을 실행 sudo하도록 지시합니다.myuser

이러한 줄을 에 추가하려면 /etc/sudoers다음을 실행합니다(루트로):

sudoedit /etc/sudoers

sudoedit업데이트된 버전의 파일을 설치하기 전에 오류가 있는지 검사합니다. 결과적으로 이는 파일을 직접 편집하는 것보다 안전합니다.

관련 정보