Я уже знаком и использую rsync, передачи scp, tar, 7z и т.д., Однако ни один из них не решает проблему резервного копирования, которую я намерен делать довольно регулярно.

У меня есть удаленный сервер с 80% используемого пространства на 100 ГБ SSD, с которого я хотел бы сделать резервную копию. На сервере более 10000 небольших файлов, поэтому поможет базовый архив или какое-то промежуточное сжатие (например, rsync -z).

У меня дома есть сервер, на который я хотел бы сделать резервную копию, но он использует Dynamic IP.

Проблема в том, чтобы использовать rsync -z или scp и tar (через канал), это должно быть сделано на удаленном сервере, но этот сервер не может видеть мой домашний сервер, так как он находится на динамическом IP.

Поэтому я могу выполнять только команды на моем домашнем сервере, такие как scp user @ remoteserver:/files/to/backup /home /user /backups, но это не может использовать сжатие, поэтому для передачи огромного количества файлов требуется очень много времени.

Есть ли более быстрый способ?

PS Мне не нужно хранить права доступа к файлам и т.д., Что делает tarball

Изменить: Из-за ограниченного пространства на удаленном сервере, я не могу сделать тарбол там и тянуть на домашнем сервере. Поэтому это должно быть в реальном времени.

2 ответа2

2

Почему нельзя использовать rsync из резервной копии? В rsync нет ограничений, которые могли бы предотвратить это. Бег

rsync -avz user@remote.example.com:/data /backupdir 

на цели резервного копирования (домашний сервер) должен сделать именно это.

0

Есть много опций. Самый простой может быть просто добавить команду -C в SSH или около того, чтобы включить сжатие для ссылки.

Более сложным (и более быстрым, будьте уверены в большом количестве мелких файлов и задержке) решением было бы удаление scp и использование канала для сжатия данных на лету. Что-то вроде tar -cz /path /to /backup | Пользователь SSH @ remote "cd /path; tar -xz" будет сжимать и распаковывать файлы, используя сжатие gzip. Конечно, ничто не мешает вам использовать другую команду после ssh, если, например, вы просто хотите сохранить сжатый файл, вы можете вместо этого использовать «cat> /path/to/file.tar.gz».

Мне непонятно, почему вы говорите о динамических IP-адресах здесь. Если это создает проблему, вы можете использовать динамический DNS или настроить VPN с сервером на статическом или инициировать извлечение с динамического IP, а не выдвигать из статического.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .