現在、次のようにkwalletからリポジトリをインポートするためのborgmaticバックアップジョブを設定しています。
kwallet-query -r systeembackup kdewallet -f borg
しかし、残念ながらborgmaticを実行すると、次のエラーが発生します。
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
Couldn't start kwalletd: QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
passcommand supplied in BORG_PASSCOMMAND failed: Command '['kwallet-query', '-r', 'systeembackup', 'kdewallet', '-f', 'borg']' returned non-zero exit status 1.
フルシステムバックアップを実行できるように、バックアップジョブはrootユーザーとして実行されるため、このコマンドではKDEウォレットを開くことはできません。
私のユーザーとして実行してみました。
sudo -i -u ik kwallet-query -r systeembackup kdewallet -f borg
成功しませんでした:
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-ik'
Couldn't start kwalletd: QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Wallet kdewallet not found
また、XDG変数を最初に設定せずに:
export XDG_RUNTIME_DIR=/run/user/1000; sudo -i -u ik kwallet-query -r systeembackup kdewallet -f borg
特権プロセス/ユーザーとしてウォレットからパスワードを取得する方法はありますか?
ベストアンサー1
これを設定して達成できました
encryption_passcommand: sudo -E -u InsertUserNameHere kwallet-query -r borg-passphrase kdewallet
存在する/etc/borgmatic/config.yaml
。
私のBorgパスワードは次のように設定されています。
head -c 32 /dev/urandom | base64 -w 0 | kwalletcli -Pe borg-passphrase -f Passwords