私はすべての人(世界中)が実行できるようにしたいスクリプトを持っています。ただし、スクリプトの1行が正しく機能するにはroot権限が必要です。
ルート資格情報を入力せずに誰もがこのスクリプトを操作できるようにするにはどうすればよいですか?コマンドの前にsudoを付けると、各ユーザーにroot資格情報の入力を求められます。
#!/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)
$