каждый раз, когда я запускаю rsync для резервного копирования блокчана, он начинается с самого начала и пытается синхронизировать все, каждый раз, хотя может быть только несколько блоков данных, которые являются новыми. Страница MAN RSYINC говорит: «Он известен своим алгоритмом дельта-трансферта, что снижает количество данных, отправленных по сети, отправив только различия между исходными файлами и существующими файлами в пункте назначения», но я не могу выяснить Как получить его только обновлять новую информацию, которая была добавлена в блокчан. Поскольку цепочка очень большая, это смешно, чтобы сохранить копирование всего дня каждый день. Может rsync резервное копирование только новые данные, а если да, то как я могу сказать это сделать это?
Это то, что я использую:
> rsync -avz --exclude-from=/exclude/file -e ssh /from/file server@ip.address:/backup/file
Согласно этой статье , комбинация из следующих свойств должна работать для Вас:
--partial --inplace --append
В Вашем случае это было бы:
rsync -avz --partial --inplace --append --exclude-from=/exclude/file -e ssh /from/file server@ip.address:/backup/file
Для меня также имеет смысл, что цепочке блоков нужны будут только "добавленные" данные, т.е. добавленные блоки.
Кроме того, можно добавить --progress
.
Я считаю, что вам нужен - inplace
.
Обычно rsync rsync создает новый файл для каждого передачи и удаляет старый, когда передача прошла успешно, поэтому любое прерывание все равно будет сохранить одну версию файла Intact. С - в помещении
он записывает существующий файл напрямую, поэтому прерывание может оставить непоследовательный файл позади; Вот почему это не значение по умолчанию.