스크립트에서 루트로 명령 실행

스크립트에서 루트로 명령 실행

나는 모든 사람(전 세계)이 실행할 수 있기를 원하는 스크립트를 가지고 있습니다. 그러나 스크립트의 한 줄이 제대로 작동하려면 루트 권한이 필요합니다.

루트 자격 증명을 입력하지 않고도 모든 사람이 이 스크립트를 작동하도록 하려면 어떻게 해야 합니까? 명령 앞에 sudo를 붙이면 각 사용자에게 루트 자격 증명을 묻는 메시지가 표시된다고 가정합니다.

#!/bin/bach
echo "works fine"
sudo rootonlycommand
echo "works fine"

답변1

sudo허용 항목에는 옵션이 /etc/sudoers있습니다 NOPASSWD:. 또한 ALL원본 사용자가 될 수도 있습니다.

그래서 이런 항목이

ALL ALL=(root) NOPASSWD: /bin/id

id누구나 비밀번호 없이 명령을 실행할 수 있습니다.

$ sudo -k -K
$ sudo /bin/id
uid=0(root) gid=0(root) groups=0(root)
$ 

관련 정보