나는 모든 사람(전 세계)이 실행할 수 있기를 원하는 스크립트를 가지고 있습니다. 그러나 스크립트의 한 줄이 제대로 작동하려면 루트 권한이 필요합니다.
루트 자격 증명을 입력하지 않고도 모든 사람이 이 스크립트를 작동하도록 하려면 어떻게 해야 합니까? 명령 앞에 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)
$