私はsudoグループに大丈夫です:
$ id
uid=1002(molot) gid=1002(molot) groups=1002(molot),27(sudo),33(www-data)
私のシュドレでは、私は適切な設定をしているようです:
sudo ALL=(ALL:ALL) NOPASSWD: ALL
コメントのない最後の行です。
しかし、私がしようとするgit pull
と、パスワードを再入力するように求められます:
$ sudo -u www-data git --git-dir /var/www/.git --work-tree /var/www pull "origin" master
[sudo] password for molot:
コンソールにログインしている場合は問題ありませんが、スクリプトでは受け入れられません。では、sudoグループの誰もがパスワードを再入力せずにwww-dataとしてgit pullできるようにするにはどうすればよいですか?
私の名前を直接入力すると:
molot ALL=(ALL) NOPASSWD: ALL
わたしにはできる。しかし、明らかに、sudoグループのマリアンやその他のユーザーには適していません。私がマニュアルを理解している限り、ユーザー名とグループ名の両方が最初のファイルで機能するはずです。
@jimbobmcgeeこれはgitフックなので、何も付加できません。これはgitの変更をプッシュしたユーザーによって呼び出され、私はそれを回避する方法を見つけられませんでした。
—
Mołot
最初のフィールド(
—
CVn 2014
sudoers
ファイル形式の簡単な理解が正しい場合)は、呼び出し元のユーザーのユーザー名です。ワイルドカード*
、またはgitフックを実行しているユーザーに置き換えてみましたか?
@MichaelKjörlingありがとう、あなたのコメントで私は特別な文字を探すようになり、答えを見つけることができました:D編集:自己回答を削除し、同じ瞬間からサードパーティの回答を受け入れました。
—
Mołot
sudo -u www-data ./your_script.sh
か?スクリプトの目的は何ですか?