マニュアルに従ってborg自動バックアップスクリプトを設定しようとしました。何らかの理由でsudoで保護された暗号化ドライブに書き込もうとすると、スクリプトはその変数を見ることができません。
たとえば、スクリプトが私にパスワードを再度要求しないため、このようなものがスクリプトとして機能する可能性があります。
#!/bin/sh
DATE=$(date --iso-8601)-$(hostname)
TARGET=~/Documents/borg
export BORG_PASSPHRASE="whatever"
borg init --encryption=repokey $TARGET
borg create $TARGET::$DATE-$$ ~/Desktop/TestFolder/1
ただし、外部FDE実装でドライブをマウントすると、エクスポートされたパスワードと奇妙な「リポキー」暗号化モードは無視されます。
#!/bin/sh
DATE=$(date --iso-8601)-$(hostname)
TARGET=~/X/borg
export BORG_PASSPHRASE="whatever"
sudo borg init --encryption=repokey $TARGET
sudo borg create $BORG_OPTS $TARGET::$DATE-$$ ~/Desktop/TestFolder/1
私はLinuxに初めて触れたので、これは単純な修正かもしれませんが、他の答えを見れば自分ではできません。助けてください。
答え1
sudoは環境変数を保存しません-E
。そのオプションを試してください。バラよりman 8 sudo
-E '-E(環境保存)オプションは、ユーザーが既存の環境変数を保存したいセキュリティポリシーを表します。 -Eオプションを指定した場合、ユーザーに環境を保存する権限がないと、セキュリティポリシーからエラーが返されることがあります。