현재 다음을 사용하여 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.
전체 시스템 백업을 수행할 수 있도록 백업 작업이 루트 사용자로 실행되므로 이 명령으로 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