ユーザーとしてコマンドを実行するBashスクリプト

ユーザーとしてコマンドを実行するBashスクリプト

指定されたユーザーでbashスクリプトからコマンドを実行し、文字列としてパスワードを提供できるかどうかを知りたいです。

現在私

COMMAND="${DIRECTORY}/script.sh"

su -c postgres $COMMAND

しかし、これを行うにはパスワードを入力する必要がありますが、スクリプトはcronで毎時間実行されるため、パスワードを入力することはできません。

ベストアンサー1

さまざまな可能性:

Sudo

呼び出しに適した安全で柔軟な方法で設定できる場合は、スクリプトユーザーがパスワードを入力しなくてもsudoユーザーとしてコマンドを実行できるようにします。postgres

sudoとラッパースクリプト

postgresorのみ作成できるラッパースクリプトを作成し、呼び出しroot(スクリプトパラメータ)が正しいことを確認できます。sudoスクリプトユーザーがなどの任意の引数を使用してラッパースクリプトを呼び出すことを許可できますpostgres

SSH

コマンドラインのみを実行する必要がある場合は、SSHを使用できます。キーをコマンドにバインドできます。つまり、キーを他の目的に使用することはできません。

おすすめ記事