目標は、www-data
ユーザー実行Sudo -u postgres -H osm2pgsql [some options here]
パスワードを要求されることなく(これは自動的に実行されるスクリプトの一部になるため)。
sudoers
ファイルの次の行でそれができると思いました
www-data ALL=NOPASSWD: /usr/bin/Sudo -u postgres -H osm2pgsql *
しかし、これはうまくいかないようです。私は何が間違っているのですか?
必要な構文は次のとおりです。
Defaults:www-data !requiretty
www-data ALL=(postgres) NOPASSWD: /usr/bin/osm2pgsql
ここで、/usr/bin/osm2pgsql
はosm2pgsql
の実際のパスに置き換える必要があります。 !requiretty
行を使用すると、端末のないスクリプトからSudoを使用できます。これにより、任意のオプションを指定したコマンドSudo -u postgres -H osm2pgsql
が機能します。
試してみてください:
www-data ALL=NOPASSWD: /path/to/osm2pgsql