루트 모드에서 실행되는 쉘 스크립트

루트 모드에서 실행되는 쉘 스크립트

루트 모드에서 실행해야 하는 명령이 포함된 스크립트를 실행해야 합니다. 명령 앞에 넣으면 sudo스크립트를 실행할 때 권한 거부가 표시됩니다(비밀번호를 쓸 기회가 없습니다). sudo를 사용하여 스크립트를 실행하면 - 명령을 찾을 수 없습니다. sudo su스크립트를 처음에 넣으면 비밀번호를 입력해도 아무 일도 일어나지 않습니다 . 스크립트는 루트 모드를 종료할 때만 실행됩니다. 그런 스크립트를 만드는 방법은 무엇입니까? 감사해요.

답변1

sudo를 통해 비밀번호를 요구하지 않도록 스크립트를 설정할 수 있습니다 /etc/sudoers. 예를 들면 다음과 같습니다.

user   ALL=(ALL:ALL) NOPASSWD: /path/to/your/script

답변2

(댓글을 달 수 없고 편집 내용이 너무 작아서 새 답변으로 게시됨)

end 명령을 사용하면 ""사용자가 임의 매개변수를 사용하여 명령을 실행하지 못하도록 할 수 있습니다.

user ALL=(ALL:ALL) NOPASSWD: /path/to/your/script ""

이제는 sudo /path/to/your/script작동하지만 sudo /path/to/your/script foo bar실패합니다.

관련 정보