Я использую дублирование в debian wheezy, который поставляется с версией 0.6.18 в качестве стандартного пакета. Я также попробовал версию 0.6.24 от wheezy-backports.
Я хочу использовать sftp как бэкэнд, но если я запустил:
duplicity --full-if-older-than 1M --exclude /run --exclude /proc --exclude /lost+found --exclude /dev --exclude /sys --exclude /mnt / sftp://$FTP_USER"@"$FTP_HOSTNAME/myserver
Я получаю следующую ошибку:
ssh: Exception: Incompatible ssh peer (no acceptable kex algorithm)
ssh: Traceback (most recent call last):
ssh: File "/usr/lib/python2.7/dist-packages/paramiko/transport.py", line 1546, in run
ssh: self._handler_table[ptype](self, m)
ssh: File "/usr/lib/python2.7/dist-packages/paramiko/transport.py", line 1618, in _negotiate_keys
ssh: self._parse_kex_init(m)
ssh: File "/usr/lib/python2.7/dist-packages/paramiko/transport.py", line 1731, in _parse_kex_init
ssh: raise SSHException('Incompatible ssh peer (no acceptable kex algorithm)')
ssh: SSHException: Incompatible ssh peer (no acceptable kex algorithm)
ssh:
Я читал, что это может быть связано с бэкендом paramiko, который используется по умолчанию, но когда я меняю его на pexpect (... pexpect + sftp: // ...), я получаю эту ошибку:
UnsupportedBackendScheme: scheme not supported in url: pexpect+sftp://
Как можно исправить эту проблему?
Попробуйте изменить команду
duplicity /source-dir pexpect+sftp://backup.server.com/storage
к
duplicity /source-dir --ssh-backend=pexpect sftp://backup.server.com/storage
Двойное тестирование проверено 0.6.24 на debian jessie 8.7
мужское двуличие:
--ssh-backend серверная часть
Разрешает явный выбор серверной части ssh. По умолчанию paramiko.
В качестве альтернативы вы можете выбрать pexpect.
Схема pexpect + sftp: // была введена в более поздней версии дублирования.