私はカーネル4.1.7-hardened-r1を使用してGentoo Hardenedを実行しており、GPGを使用してSSHで開かれたシェルセッションでファイルを暗号化しようとしており、変数を無効にしてDISPLAY
パスワードプロンプトでpinentry-cursesを使用しようとしています。私のものを使用すると、gpg -o file.gpg --symmetric file
暗号化はうまく機能します。使用すると、pv file | gpg -o file.gpg --symmetric
次のエラーメッセージが表示されます。
gpg-agent[30745]: command get_passphrase failed: Inappropriate ioctl for device
ベストアンサー1
GPG_TTY
以下のように正しく機能するには、環境変数を設定する必要があります。このファイル:
GPG_TTY=$(tty)
export GPG_TTY
これらの 2 行は (bash と仮定) にある必要があり、~/.bashrc
新しい端末セッションを開くたびに実行されます。
しかし、別の解決策があります。 bashでは、pv
プロセス置換を使用して実行し、ファイルのように偽装することができます。
gpg -o file.gpg --symmetric <(pv file)
したがって、追加の入力が必要なプログラムに項目をリンクするのはおそらく良い考えではありません。予想とは異なる動作があります。