Gpgとファイルに保存されているパスワードを使用してファイルを自動的に暗号化するスクリプトを作成したいと思います。
私はこれを試しました:
gpg -c --passphrase-fd 0 file.txt < pass.txt
Ubuntu 16.04サーバーでこれを実行すると、期待どおりにファイルが暗号化されます。 Ubuntu 18.04デスクトップで実行すると、パスワードマネージャーのモーダルダイアログを使用してパスフレーズの入力を求められます。
ダイアログをスキップして非対話型暗号化を行うにはどうすればよいですか?
回避策として、gpgではなくopensslを使用してこれを行いました。
openssl aes-256-cbc -pass file:pass.txt -e -in file.txt -out file.txt.enc
Lubuntu 18.04 LTSでテストしました。
あなたが説明したのと同じように、コマンドラインが失敗します。
次のコマンドラインは私のために働く、
gpg --batch -c --passphrase-file pass.txt file.txt
詳細はman gpg
をご覧ください
--passphrase-file file Read the passphrase from file file. Only the first line will be read from file file. This can only be used if only one passphrase is supplied. Obviously, a passphrase stored in a file is of questionable security if other users can read this file. Don't use this option if you can avoid it. Note that this passphrase is only used if the option --batch has also been given. This is different from GnuPG version 1.x.