Сбой резервного копирования с использованием PGP: "Неиспользуемый открытый ключ"
Я пытаюсь создать подходящую роль для автоматизации резервного копирования. Однако, это терпит неудачу с ошибкой:
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: none
GPGError: GPG Failed, see log below:
===== Begin GnuPG log =====
gpg: ADD3F11Easdsdfs: skipped: public key not found
gpg: [stdin]: encryption failed: public key not found
===== End GnuPG log =====
Ключ PGP был создан с использованием gpg --gen-key <filename>
с этими настройками:
Key-Type: DSA
Key-Length: 4096
Name-Real: {{ gpg_name }}
Name-Comment: Used primarily for backup encryption on {{ inventory_hostname }}
Name-Email: {{ gpg_email }}
Expire-Date: 0
%no-ask-passphrase
%no-protection
%commit
%echo done
Как вы можете видеть, у него нет даты истечения срока действия (так что срок его действия не может истечь) и парольной фразы. Оба свойства были проверены вручную с помощью CLI.
Это команда, которую я использую для запуска двуличия:
duplicity full /var/www gs://backups2/{{ inventory_hostname }} --encrypt-key {{ gpg_email }}
Я также попытался использовать идентификатор ключа:
duplicity full /var/www gs://backups2/hostname --encrypt-key ADD3F11E
Есть идеи, что может пойти не так?
1 ответ
Бежать gpg --version
а также /usr/bin/gpg --version
и проверьте, одинаковы ли они.
Duplicity может вернуться к версии 1.xx, в то время как ваш терминал может иметь псевдоним для вызова GnuPG версии 2.xx В этом случае ключ создается / импортируется с помощью GnuPG 2, но GnuPG 1 может не знать об этом (?)
В качестве альтернативы, если вы хотите, чтобы Duplicity использовала GnuPG 2, и вы используете Debian (или связанный с ним), вы можете перенаправить /usr/bin/gpg2 в / usr / bin / gpg, как описано здесь или здесь. В этом случае двуличие будет вынуждено использовать версию 2.
Как отмечено в ссылке, переадресация может иметь нежелательные побочные эффекты для других программ, ожидающих GnuPG версии 1, когда они вызывают / usr / bin / gpg.