Назад | Перейти на главную страницу

двойственность не может найти удаленный каталог резервных копий?

Используя для этого мой закрытый ключ, эта команда позволяет мне без проблем подключиться к / home / backupUser / backup:

$ sudo sftp -oPort=7843 backupUser@192.168.x.x:backup

Однако, когда я запускаю duplicity, я получаю следующую ошибку:

duplicity full --exclude ... / scp://backupUser:passwd@192.168.x.x:7843:/backup 

bash: wd@192.168.x.x:7843./backup: No such file or directory

Я предполагаю, что duplicity интерпретирует /backup путь относительно домашнего каталога пользователя.

Но поскольку приведенная выше команда не сработала, я также попытался оставить / в каталоге резервного копирования в конце команды, т.е.

duplicity full --exclude ... / scp://backupUser:passwd@192.168.x.x:7843:backup 
bash: wd@192.168.x.x:7843:backup: command not found

Что-то мне здесь не хватает, например, добавить код доступа для закрытого ключа, чтобы эта команда работала?

Думаю, нужно удалить: в вашей команде. Пожалуйста, обратитесь Вот

Хотя я рискую получить -1, я хочу уточнить типичные ошибки, которые мы допускаем в отношении дублированного формата (что было сделано в исходном вопросе).

Мы обычно забываем второй "//" в хосте, например:

duplicity full --exclude ... / scp://backupUser:passwd@192.168.x.x:7843:backup

Ошибка заключается в том, что (хотя кто-то указал, что это не должно быть ":") формат должен быть:

duplicity full --exclude ... / scp://backupUser:passwd@192.168.x.x:7843//backup

Я обычно забываю использовать "//" (хотя у меня бывают разные ошибки).

Хорошо, разобрался ... спасибо за вашу помощь!

Я попробовал выполнить команду sftp самостоятельно и заметил, что получаю ту же ошибку (No such file or directory) всякий раз, когда я пропустил -oPort аргумент.

#An sftp command I tried on it's own...
#sftp -oIdentityFile=/root/.ssh/id_rsa -oPort=7843 -oServerAliveInterval=15 -oServerAliveCountMax=2 buser@192.168.2.251

Я внес изменения в путь, предложенный @Sivaram Kannan выше, и добавил -oPort аргумент к --ssh-options, и это, похоже, решило проблему:

sudo duplicity   --ssh-askpass --dry-run  --num-retries 1 --ssh-options="-oPort=7843 -oIdentityFile=/root/.ssh/id_rsa" \
 --exclude /proc --exclude /tmp --exclude /mnt --exclude /dev --exclude /sys \
--force / scp://buser@192.168.x.x:7843//home/backupUser/backup

(И, конечно, --dry-run параметр удерживает его от запуска, просто проверяя его)

Похоже, это помогло.

Я предполагаю, что дублирование будет интерпретировать путь / backup как относительный к домашнему каталогу пользователя.

Правильно. Но синтаксис отличается от обычного scp формат. Удалите двоеточие и попробуйте еще раз:

duplicity full --exclude ... / scp://backupUser:passwd@192.168.x.x:7843/backup

поскольку вы используете bash, я предполагаю, что вы хотите подключиться к пользователю Linux, вам следует попытаться добавить ~ sing перед каталогом /, это необходимо для того, чтобы перейти в домашний каталог пользователя.

Я знаю, что так должно быть автоматически, поскольку вы пытаетесь подключить пользователя резервного копирования, но, как я вижу в вашем вопросе, два ansers, которые вы получаете от bash, различны, один с ./backup, а другой: резервное копирование , поэтому я думаю, что вам следует попробовать со знаком ~.