Как я могу сделать скрипт для синхронизации всех моих файлов с локального сервера в облачное пространство? Это предназначено для работы в качестве резервного копирования .
Проблема: проверьте, подключен ли облачный диск, если нет, подключите его. Поскольку это только webdav, я постоянно сталкиваюсь с проблемами с davfs2. Когда соединение неожиданно закрывается, папка остается подключенной, но недоступной, что приводит к зависанию rsync и невозможности его перемонтирования.
Проблема: я хочу ограничить скорость передачи, чтобы моя линия не была полностью заблокирована все время. Я говорю о большом количестве данных, для загрузки которых может потребоваться несколько недель.
Проблема: синхронизировать ее - я понятия не имею, что rsync делает «из коробки», а что нет, но, конечно, я хочу копировать только измененные и новые файлы перезаписать измененные файлы без запроса и, самое главное, возобновить передачу части загрузки. РЕДАКТИРОВАТЬ: Для этой части, вероятно, должна выполнить следующая команда:
rsync -a -u -z -P /source/ /target/ --bwlimit=1000 --append-verify
Однако возникла другая проблема ..
Любая помощь будет оценена. Мои навыки в партии практически отсутствуют. Python будет хорошо работать для меня! РЕДАКТИРОВАТЬ: Или даже лучше, полноценное приложение, которое делает свою работу!
Извините за последний ответ, но в случае, если это помогает другим, я записал маленький сценарий Python для решения почти точно этой проблемы. Это не решит проблему 4 - я не уверен, какое поведение имело бы смысл там (если новый файл создается, который соответствует одному из сегментов ранее файл разделения, что это должно сделать?), но иначе я записал это, чтобы сделать точно, что Вы говорите - копируют локальные файлы облачному поставщику.
Во всяком случае, это - вероятно, хорошая начальная точка, что Вы могли добавить функциональность разделения файла к тому, если бы Вы хотели. Это доступно здесь:
https://github.com/j4m3z0r/davsync
я только протестировал его против нескольких серверов WebDAV, и у них всех, кажется, есть немного отличающаяся интерпретация протокола. Сообщите мне, находите ли Вы, что это не работает на Вас, и я попытаюсь получить зафиксированный.