Бэкап файлов, базы данных и настроек сервера в Dropbox. Резервное копирование данных на сервисе Dropbox Что делает представленный мной скрипт

Сервис Dropbox предоставляет для своих пользователей массу возможностей. Каждый человек решает для себя сам, как использовать его. Например, я использую его для резервного копирования своих данных на Dropbox , которое проходит для пользователя совершенно незаметно в фоновом режиме. Там же вы узнаете, как зарегистрироваться и пользоваться этим сервисом. Если вы владеете своим блогом, то наверняка задумывались сохранностью данных этого блога от всевозможных неприятностей, а если не задумывались, то стоит прямо сейчас это сделать. Существует масса плагинов, которые сохраняют базу данных, но очень мало, которые делают резервное копирование блога полностью, то есть и базу данных, и картинки, и сами файлы блога вместе с темой. Самым удобным способом для меня стал способ делать backup блога wordpress на dropbox с помощью плагина «WordPress Backup to Dropbox». Это значит, что весь ваш блог и база данных будет скопирована на сервис Dropbox в ваш аккаунт, а затем синхронизирован с вашим компьютером, а значит, скопирован на ваш компьютер полностью. В случае неисправности блога, вы сможете восстановить блог как с помощью вашего , так и полностью самостоятельно.

Плагин «WordPress Backup to Dropbox» делает резервные копии на сервис Dropbox, это подразумевает, что аккаунт у вас уже есть. Если его у вас нет и вы хотите получить дополнительно 250 Мб совершенно бесплатно к стандартным 2 Гб дискового пространства, то . Для тех, кто не знает, что такое сервис Dropbox. Это сервис для хранения и синхронизации данных между компьютерами пользователя. Для того, чтобы синхронизация осуществлялась с вашими устройствами, а это может быть не только компьютер под управление Windows, но и Linux, Mac или Android, вам нужно установить небольшую программу на устройство. Она автоматически будет копировать все данные из специальной папки с компьютера на сервис и наоборот. Максимальный объём, который можно заработать, привлекая людей, это на данный момент 8 Гб. Если же вы не хотите использовать возможности Dropbox в полном объёме, то просто не устанавливайте программу, а просто зарегистрируйтесь по ссылке выше и установите плагин в панели веб-мастера для того, чтобы делать резервное копирование блога на wordpress. Вы можете просто разархивировать плагин в папку /wp-content/plugins/ или сделать всё в автоматическом режиме. Делается это в следующей последовательности:

  1. Открыть вкладку «Плагины» и нажать «Добавить новый».
  2. Нажать на открывшейся вкладке на ссылку «Загрузить».
  1. Нажать на кнопку «Выбрать файл», после чего выбрать предварительно сохранённый фал плагина «WordPress Backup to Dropbox» на вашем компьютере и нажать на кнопку «Установить».

  1. Нажать на ссылку «Активировать плагин».

Всё, плагин для backup блога на wordpress установлен и осталось его настроить.

  1. Открывайте вкладку в панели-вебмастера «Параметры» и нажимайте «Backup to Dropbox». У вас появится новое окошко с просьбой авторизации в сервисе Dropbox.

  1. Нажимайте кнопку «Authorize». Этот будет означать, что вы предоставляете этому плагину разрешение на доступ к аккаунту и копирования в него данных. Плагин не сохраняет ваши данные, поэтому, вы можете его смело использовать.

  1. Нажимайте кнопку «Allow». Если всё нормально, а так оно и будет, то вам сообщат, что всё нормально и dropbox связан с вашим плагином.

  1. Вернитесь на вкладку с плагином и нажмите на кнопку «Continue».

Если всё нормально прошло, то вы попадёте в настойки плагина, если нет, то пройдите весь путь ещё раз, но побыстрее, тут похоже есть ограничение по времени или ещё что-то.

Настройки плагина резервного копирования «WordPress Backup to Dropbox» довольно просты:

Настройки «Settings»:

  • Locally store backup in this folder – папка в которой будут хранится файлы backup на вашем локальном диске, то есть на хостинге. Иногда плагин не может создать папку самостоятельно. Тогда вам нужно сделать это и создать папку для хранения этих файлов, выставив права для неё «777». Это позволит плагину записывать файлы бэкапа.
  • Store backup in this folder within Dropbox – будет указывать на папку, куда будут складываться файлы бэкапа на сервисе Dropbox. Если у вас один сайт, то можно обойтись настройками по умолчанию, в противном случае, каждому блогу нужно дать уникальный путь к данным. Например, я дал путь «WordPressBackup/zarabotokwmzru». Без точки он потому, что плагин не позволяет этого сделать, а может этого не позволяет Dropbox.
  • Временные настройки . «Day and Time » — день недели и время для резервного копирования. «Frequency » — настройка частоты backup блога: ежедневно, еженедельно, ежемесячно и несколько раз в неделю.

В старой версии плагина был ещё параметр количества одновременно хранимых файлов, но теперь его нет.

После того, как бэкап вашего блога будет сделан, начнётся его копирование на сервис Dropbox. Затем, если у вас установлен клиент сервиса, то эти файлы будут скопированы на ваш компьютер и на другие связанные устройства. В архиве backup файлов, содержатся файлы всего блога и файл базы данных.

Резервное копирование блога на wordpress следует делать обязательно, так как тот, кто заботится о сохранности своих данных (а здесь речь идёт о долгом процессе работы над блогом), будет в выигрышном положении среди тех, кто backup блога не делает.

Наверняка вы слышали о Dropbox - замечательном облачном сервисе хранения и синхронизации файлов. Но далеко не все знают о возможности использовать Dropbox для нужд WordPress-а. В сегодняшнем уроке речь пойдет о том, как использовать ваш Dropbox-ящик для резервного копирования сайта на WordPress.

Для выполнения этого урока вам понадобится зарегистрированный аккаунт Dropbox . Если у вас такого нет - зарегистрируйтесь . Вся процедура займет пару минут.

Вы также можете посмотреть наш видео урок:

Резервная копия WordPress - что это?

Это все содержимое вашего сайта на WordPress в запакованном виде (.zip или.tar.gz ), включая все записи, страницы, комментарии, изображения и медиафайлы, а также плагины и темы.

Резервные копии делаются при переноса сайта или его миграции на случай, если что-то пойдет не так. Или просто как правило хорошего тона - резервное копирование выполняется автоматически по расписанию пару раз в неделю для сохранности ваших данных.

В этом уроке я опишу, как делать резервное копирование WordPress-сайта в папку Dropbox на примере плагина .

Это плагин очень прост в работе. Он позволяет сохранять не только сам файловый архив сайта, но и.sql файл с базой данных, которую можно будет восстановить через phpMyAdmin . Также экспортируется файл.htaccess с дополнительными настройками конфигурации сервера. Со всеми возможностями плагина вы можете ознакомиться на странице разработчика .

Стоит отметить, что в целях безопасности при создании бэкапа не сохраняется сам движок WordPress и его конфигурационный файл wp-config.php . В архив резервной копии будет включен только каталог /wp-content со всем содержимым (plugins , themes , uploads , etc.)

Поэтому перед миграцией сайта не забудьте сохранить этот файл (wp-config.php) или хотя бы данные для доступа к БД WordPress.

Установка

Создание резервной копии

После активации плагина перейдите в меню Параметры → wp Time Machine .

Все, что нужно сделать, - это заполнить 3 поля (email и пароль от вашего ящика Dropbox, а также название папки, куда будет создана резервная копия). Введите данные и нажмите кнопку Generate wp Time Machine archive .

Подождите, пока идет процесс создания и перемещения резервной копии. Не закрывайте окно браузера, пока видите это уведомление:

Как только все будет готово, вы увидите следующее:

Теперь просто нажмите Remove this message . Ваша резервная копия уже создана и помещена в папку Dropbox.

Что получилось

Давайте посмотрим, что у нас получилось. Зайдите на свой ящик Dropbox и вы увидите новый каталог в менеджере файлов. Внутри будут находится следующие файлы:

При создании резервной копии в папку Dropbox помещаются 5 файлов:

Если у вас установлен клиент Dropbox для операционной системы, вы можете сразу получить доступ к файлам резервной копии, просто зайдя в папку Dropbox на своем компьютере:

Это очень удобно . Нажав всего одну кнопку в админке WordPress, вы автоматически получаете резервную копию сайта в "облаке " (на ящике Dropbox) и у себя на компьютере на жестком диске. Можно сразу открыть архив wpTimeMachine-content-files.zip и получить доступ к нужным файлам.

Дополнительные возможности

Если вы зайдете в админке WordPress в меню Параметры → wp Time Machine → Show Plugin Options , то увидите дополнительные возможности плагина.

Кроме экспорта в ящик Dropbox вы также можете выбрать менее популярный сервис Amazon S3 или просто указать произвольный FTP-сервер . Просто укажите хост, логин и пароль для FTP-доступа, и резервная копия вашего сайта будет создана на указанном сервере.

Вы также можете выбрать формат архива резервной копии - .zip или.tar.gz ; включить или выключить журнал изменений; исключить из архива кэш-папки или сделать так, чтобы все папки в бэкапе содержали дату экспорта в заголовках.

Здравствуйте, уважаемые читатели! Сегодня хочу рассказать, как сделать бэкап сайта (или резервное копирование) при помощи плагина WordPress Backup to Dropbox . Этот плагин позволяет скопировать не только базу данных, но также все файлы ресурса на облачный сервис Дропбокс .

Для чего же нужно копирование сайта? Представьте себе, что результатом некоторых непредвиденных действий на хостинге стала потеря всех файлов и базы данных вашего проекта. Хорошо, если хостер регулярно делает бэкапы сайта, тогда всегда можно при форс-мажорных обстоятельствах к нему обратиться; кстати, которым пользуюсь я, поступает именно так. Но всегда могут случиться какие-то изменения. Ну перестали осуществляться по каким-то причинам резервные копирования, что же делать? Вот тогда помогает и сделанная плагином WordPress Backup to Dropbox копия сайта. Кстати, альтернативным вариантом является .

Прежде чем перейти непосредственно к описанию работы плагина, необходимо дать разъяснения собственно сервиса, где будут храниться копии файлов, а также данных. Сначала вкратце, что такое облачные сервисы , одним из которых является Dropbox. Эти сервисы делятся на две составляющие: front end (часть пользователя, которая включает компьютер и приложение для доступа), также back end («облачная» часть системы). Эти две составляющие связаны между собой сетью интернет.

Когда вы регистрируетесь, получаете возможность синхронизировать файлы, находящиеся на нескольких компьютерах. То есть можно быстро и удобно делиться файлами со своими друзьями. Вот пример, который очень показателен: вам необходимо выполнить некоторую работу, пользуясь программой Microsoft Office, но на компьютере ее нет; тогда можно воспользоваться облачным сервисом, запустив программу онлайн.

Конечно, сейчас существует немало сервисов, которые предоставляют подобные услуги. К тому же каждый из них имеет свои плюсы и минусы, везде свои правила, платные услуги, которые включают различные тарифные планы. Чем дороже, тем больше возможностей он дает. Я дал коротенькую характеристику понятию «облачный сервис» вообще, но нас, конечно, интересует именно Дропбокс, поскольку предоставляет бесплатно 2 Гб пространства под хранение файлов, что вполне достаточно, чтобы сделать бэкап сайта; а еще потому, что именно этот сервис используется для резервного копирования плагином Wordpress Backup to Dropbox.

Дропбокс: как зарегистрироваться и скачать приложение

Итак, переходим к основному. Сначала регистрируемся на официальном сайте Dropbox.com . Для этого заполняете нижеследующую форму:

Нажимаете кнопку «Create account» . После этого вам предложат сохранить установочный файл на компьютер:



Если автоматически не началась загрузка, то есть не появилось диалоговое окно с предложение сохранить загрузочный файл, кликните по ссылке «restart the download» . Ниже дана пошаговая инструкция начала установки приложения Дропбокс: запускаете сохраненный ранее загрузочный файл dropbox.exe; в появившемся диалоговом окне, которое запрашивает разрешение на внесение изменений, нажимаете «Yes»; для установки приложения нажимаете «Install».

Установка стандартная, ничего сложного нет. Единственное, можете выбрать диск, на который будете устанавливать приложение. По умолчанию там стоит C; но мне, например, удобнее использовать диск D, куда я и инсталлировал приложение. После установки будет видна папка Dropbox:


Кликнув по ней, увидите, что она состоит из 3 подпапок:



Да, забыл уточнить, папки на компьютере будут синхронизированы с аккаунтом Dropbox, который будет выглядеть так:


Ну вот вкратце, что такое облачный сервис Дропбокс, для общей информации это было необходимо. Теперь переходим непосредственно к описанию того, как сделать бэкап сайта (резервное копирование) при помощи плагина WordPress Backup to Dropbox.

WordPress Backup to Dropbox: установка, настройка и тестирование

1. Скачайте плагин Backup to Dropbox на компьютер. Процедура стандартная, если непонятно, почитайте инструкцию по установке плагинов для WordPress, которую я подробно описывал . Последним шагом активируйте расширение.

Там нажимаете «Authorize»:



Нажимаете «Allow», следующей должна будет информация об удачном соединении с аккаунтом Dropbox:


4. Теперь возвращаемся обратно в админку вордпресс в тот же раздел, нажимаем «Continue»:


5. Теперь необходимо настроить WordPress Backup to Dropbox надлежащим образом. В разделе «Настройки» указываем папку, в которую будет осуществляться резервное копирование.


Время в графе «День и Время» лучше выбрать ночное. Например, Среда 03:00; обычно в это время нагрузка на сервер минимальная. «Периодичность» - частота, с которой будет производится бэкап сайта. Думаю, раз в неделю нормально для среднего сайта или блога. Ставим «Еженедельно».

6. Теперь установим папки, которые следует исключить из резервного копирования. Для плагина wordpress backup to dropbox таковой является подпапка backups. Для этого необходимо кликнуть по папке wp-content и напротив открывшейся backups поставить галочку:


Не забываем нажать кнопку «Сохранить изменения» , чтобы сохранить настройки. Теперь все настройки произведены, в определенное время, которое вы указали, будет производится автоматический бэкап сайта. Но это пока не все. Попробуем произвести тестирование работы плагина. Для этого нажимаем «WPB2D», затем «Backup log» и «Начать резервное копирование»:


В процессе бэкапа сайта будете наблюдать следующую картину в админ-панели WordPress:


После того, как бэкап завершиться, вы увидите зеленую галочку в правом нижнем углу панели вашего компьютера рядом с логотипом dropbox, а в админ панели в разделе «Настройки» следующую запись:


Все, бэкап сайта успешно завершен, в следующий раз он будет производиться по ранее установленным параметрам. На этом сегодня завершаю свой пост, который занял, к моему удивлению, немало времени. Надеюсь, теперь знаете, как правильно сделать бэкап сайта используя плагин Backup to Dropbox. Не забудьте, если материалы блога вам небезразличны, нажать на кнопки социальных сетей, расположенные чуть ниже.

Если желаете быстро освоить навык построения собственного ресурса на Вордпресс, изучите досконально необходимый для этого курс Е.Попова «WordPress - Профессиональный блог за один день», лидера по созданию качественных инфопродуктов. В дополнение можете познакомиться с другими , которые помогут в решении данной задачи.

Привет, дорогие читатели! Продолжаю тему сайта WordPress. Я уже дал подробную инструкцию по резервному копированию сайта на , но там будет сложновато для новичков. Поэтому, сегодня я представлю вам очень полезный плагин WordPress Backup to Dropbox , который облегчит процесс создания резервной копии всего сайта или блога на движке WordPress. С помощью данного модуля можно с легкостью сделать резервное копирование сайта , включая все файлы, базы данных и автоматически сохранять клон веб-ресурса на популярном бесплатном хостинге Dropbox .

Совсем кратко, что такое Dropbox? Dropbox сохранит все ваши документы, видео и любые другие файлы. Данные, которые вы сохраните в Dropbox, будут автоматически отображаться на всех ваших компьютерах, телефонах и даже на сайте Dropbox - у вас отовсюду будет к ним доступ.

WordPress Backup to Dropbox создаст папку в вашем Dropbox

Появится надпись - Поздравляем! Приложение WordPress Backup to Dropbox подсоединено к вашему аккаунту Dropbox:

Вернитесь на страницу настроек плагина и кликнете кнопку "Продолжить":

Кликнете кнопку "Продолжить"

Может возникнуть ошибка при подключении к хостингу, проделайте авторизацию несколько раз. После успешных процедур, приступаем к настройке . Отметьте нужные пункты, название папки где будут храниться копии файлов вашего блога, настройте расписание. Выберите файлы и каталоги, которые необходимо исключить из резервной копии. Клик по имени каталога раскроет его. Обратите внимание: Резервное копирование базы данных будет выполняться независимо от вашего выбора:

Настройка - Резервное копирование сайта на хостинг Dropbox

Сохраните изменения. В разделе WPB2D есть подраздел Backup Monitor это - Ручное резервное копирование:

Если Вы откроете его, тогда сможете вручную создать резервную копию на хостинге. А у меня на этом все. Храните ваши резервные копии сайта (клон) в целях безопасности и вашего душевного спокойствия в надежном месте. Пока и всего хорошего. Увидимся.

С уважением, Сергей. Блог WordPress Mania для начинающих .

(function(w, d, n, s, t) { w[n] = w[n] || ; w[n].push(function() { Ya.Context.AdvManager.render({ blockId: "R-A-292864-4", renderTo: "yandex_rtb_R-A-292864-4", async: true }); }); t = d.getElementsByTagName("script"); s = d.createElement("script"); s.type = "text/javascript"; s.src = "//an.yandex.ru/system/context.js"; s.async = true; t.parentNode.insertBefore(s, t); })(this, this.document, "yandexContextAsyncCallbacks");

Уже несколько лет как появилась возможность любому смертному желающему арендовать не только shared-хостинг, но и «полноценный» сервер с root-доступом и возможностью настроить его так, как хочется самому. Настроить, например, кроме web-сервера еще и кучу других сервисов.
Так же поступил и я несколько лет назад. Сначала арендовал один сервер, потом другой, и переносил настройки ручками, находя нужные файлы в директории /etc.

За пару лет на моём сервере осело несколько блогов друзей, и даже почтовый сервер, так как давно не хочу, чтобы моя почта была у Google. Насчет сохранности данных задумывался после каждой статьи на Хабре, но всё было как-то не до этого. И, как говорится, админы делятся на три категории: на тех, кто не делает бэкапы, на тех, кто уже делает и на тех, кто даже проверяет восстанавливаемость из бэкапов. Так получилось и со мной, хоть хостер и очень хороший, но произошла у них авария с жесткими дисками. Да такая, что неделю они пытались восстановить диски и предварительные оценки были очень неутешительными. А бэкапов у меня не было. Какое настроение у меня было в те дни можете сами представить.

Но через несколько дней техникам хостера удалось-таки восстановить данные и запустить все виртуальные сервера на той ноде. А я задумался о бэкапах. Думал я так - бэкап должен быть не на том же сервере (естественно!), желательно, чтобы он был у меня на компьютере, но не в одном экземпляре. Я обдумал и установку FTP на домашний компьютер и даже отправку архивов письмами, но все эти варианты меня не устраивали. И я понял, что надо попробовать Dropbox, которым я к тому времени пользовался уже пару лет, а бесплатных гигов у меня было около 18-ти.

Преимущества бэкапа в Dropbox:

  • Независимость от домашней инфраструктуры и канала в Интернет
  • Множественные копии (сразу на все синхронизируемые ПК)
  • Кроме собственного хранения бэкапы хранятся и в облаке

Что делает представленный мной скрипт?

  • Инкрементальный бэкап файлов в указанных папках (по первым и пятнадцатым числам идет полный бэкап)
  • Бэкап всей базы MySQL
  • Бэкап архивируется с помощью 7zip, с указанием пароля (вам же не надо хранить пароли в открытом виде в Dropbox"е?)

Как это делается?

Вкратце, создаётся «приложение» с точки зрения платформы Dropbox, авторизуется пользователем (то есть нами) и пишется скрипт, который пользуется авторизационными данными и заливает файлы бэкапа на Dropbox.

А точнее?

Шаг 1 - создание приложения
Заходим на страницу App Console , нажимаем кнопку «Create app», выбираем тип «Dropbox API app», выбираем пункт «Files and datastores», так как мы собираемся работать с файлами, а в следующем пункте отвечаем «Yes - My app only needs access to files it creates», это означает, что ваше приложение будет ограничено только своей отдельной подпапкой в папке App, к другим файлам у него не будет доступа. Придумываем название своему приложению и нажимаем «Create app».
Перед вами предстанет целая страница настроек созданного приложения, но там не требуется ничего дополнительно настраивать. Но пока не закрывайте её.
Шаг 2 - скачивание и установка SDK
Чтобы писать приложения, которые будут работать с файлами в вашем Dropbox"е, надо зайти в раздел Core API . Там мы можем скачать нужные нам SDK, почитать документацию и пройти обучающие туры.
Так как я считаю, что лучшим языком для скриптования для меня является Python, то я скачал себе его SDK и установил. Установка очень простая, всё ограничивается скачиванием, разархивированием самого SDK и установкой его с помощью команд "python setup.py install ", или "pip install dropbox ".
Шаг 3 - авторизация
Библиотека Core API использует OAuth v2 , но Python SDK от Dropbox"а сам позаботится о том, как им пользоваться, так что вам не о чем волноваться и не придется писать всё с нуля.
Настало время накодить небольшой скрипт:

# Включить Dropbox SDK import dropbox # Вставить настоящие app_key и app_secret со страницы созданного приложения из шага 1 app_key = "INSERT_APP_KEY" app_secret = "INSERT_APP_SECRET" flow = dropbox.client.DropboxOAuth2FlowNoRedirect(app_key, app_secret) # На данном этапе юзер авторизуется authorize_url = flow.start() print "1. Перейдите по ссылке: " + authorize_url print "2. Нажмите "Allow"" print "3. Скопируйте авторизационный код." code = raw_input("Вставьте авторизационный код сюда: ").strip() # Если вы ввели правильный код, то дальше он отсылается на сервер и получается access_token, который нам нужен access_token, user_id = flow.finish(code) # Для проверки авторизации выведем информацию об аккаунте client = dropbox.client.DropboxClient(access_token) print "linked account: ", client.account_info() # А сам access_token вам надо сохранить в файл для дальнейшей работы скрипта print "access_token: ", access_token

Шаг 4 - создаём временную папку и файл токена
Сам скрипт backup.py у меня лежит в папке /root, в ней же есть временная папка backup и файл dropbox_token.txt. Вам тоже нужно создать их и в файл записать токен с предыдущего шага. Токен состоит из двух строк, в файле они именно так и лежат, с переносом строки.
Шаг последний - пишем скрипт бэкапа

Развернуть

#!/usr/bin/python import os import sys import time import string from os.path import getsize curDate = time.strftime("%d.%m.%Y", time.gmtime()) curDay = time.strftime("%d", time.gmtime()) backupDelay = time.time()-86400 if curDay == "01" or curDay == "15": backupDelay = 0 print "curDate:", curDate # Include the Dropbox SDK libraries from dropbox import client, rest, session # Get your app key and secret from the Dropbox developer website APP_KEY = "ключ приложения" APP_SECRET = "секретный код приложения" # ACCESS_TYPE should be "dropbox" or "app_folder" as configured for your app ACCESS_TYPE = "app_folder" sess = session.DropboxSession(APP_KEY, APP_SECRET, ACCESS_TYPE) oauth_token = "" oauth_token_secret = "" f = open("dropbox_token.txt","r") if f: oauth_token = string.strip(f.readline()) oauth_token_secret = string.strip(f.readline()) f.close() print "oauth token found:", oauth_token, oauth_token_secret if oauth_token == "" or oauth_token_secret == "": request_token = sess.obtain_request_token() # Authorize the application on dropbox site url = sess.build_authorize_url(request_token) print "url:", url print "Please visit this website and press the "Allow" button, then hit "Enter" here." raw_input() # This will fail if the user didn"t visit the above URL and hit "Allow" access_token = sess.obtain_access_token(request_token) f = open("dropbox_token.txt","wb") f.write(access_token.key + "\n") f.write(access_token.secret) f.close() else: sess.set_token(oauth_token, oauth_token_secret) client = client.DropboxClient(sess) print "linked account:", client.account_info() def sync_dir(dir): rootdir = dir print "Syncing directory:", rootdir startTime = backupDelay for root, subFolders, files in os.walk(rootdir): for file in files: fname = os.path.join(root,file) if os.path.getmtime(fname)>startTime: #print root, file os.system("mkdir -p "backup"+root+""") os.system("cp ""+fname+"" "backup"+fname+""") print "Making dump of MySQL databases..." os.system("mysqldump --all-databases -uroot -pROOT_ПАРОЛЬ_MYSQL -r backup/backup.sql") sync_dir("/var/www") sync_dir("/var/spool/virtual") sync_dir("/home/user") backupName = "backup_"+curDate+".7z" print "Creating archive with name", backupName os.system("7z a -pПАРОЛЬ_АРХИВА "+backupName+" backup/* /etc") f = open(backupName,"rb") if f: fsize = getsize(backupName) uploader = client.get_chunked_uploader(f, fsize) print "Uploading file", fsize, "bytes..." while uploader.offset < fsize: try: upload = uploader.upload_chunked() print "." except rest.ErrorResponse, e: # perform error handling and retry logic print "error uploading file!" uploader.finish("/"+backupName) f.close() print "File uploaded successfully." print "Deleting temp files..." os.system("rm -r backup/*") os.system("rm " + backupName);

Послесловие
  • Этот скрипт я добавил в crontab с запуском ежедневно в 4:00 утра.
  • В скрипте есть три строки с вызовом функции sync_dir, точно так же вы сами можете настроить, какие папки вам надо бэкапить.
  • Скрипт не удаляет файлы, которые были удалены из папки, если инкрементально разархивировать полный архив и последующие, то удалённые папки/файлы останутся.
  • Удаление старых бэкапов в самом Dropbox я делать не стал, чищу папку сам когда вспоминаю об этом.
  • Недавно взял себе еще пару VPS в других странах, а в скрипт добавил только префикс к названию бэкапов, таким образом все бэкапы сливаются в одну папку, но их можно отличить очень просто.