Бэкап файл сервера в dropbox. Резервное копирование данных на сервисе Dropbox. Шаг последний - пишем скрипт бэкапа

Всем привет! Наверное, мало кто делает резервные копии файлов своего блога, ну или делает очень редко, как я раньше. Про то, как делать резервные копии базы данных я уже рассказывал в , где благодаря плагину WordPress Database Backup к нам почту регулярно автоматически приходят резервные копии именно базы данных .

Нам так же нужно периодически делать резервные копии ФАЙЛОВ блога . Поверьте, это очень нужно и может очень сильно пригодится в будущем. Благодаря очень полезному и простому плагину WordPress Backup to Dropbox – это сделать очень просто.

Идею про данный плагин мне подкинули все те же добрые люди, читатели блога вот в и уроке. Спасибо, друзья. После успешного его использования, я решил рассказать о данном плагине Вам.

Принцип работы Dropbox и плагина WordPress Backup to Dropbox

Существует очень интересный сервис под названием . Суть его заключается в следующем: на ваш аккаунт выделяется 2 ГБ объема (это при использовании бесплатной версии аккаунта – этого, по крайней мере хватает мне вполне), после на компьютере появляется папка, размером 2 ГБ (допустим, называется она Dropbox) и эта папка сихронизируется с сервером.

То есть, к данной папке можно получить доступ с любого компьютера, мобильного устройства (при авторизации с помощью логина и пароля). Очень удобная вещь, скажу я вам.

Dropbox я использую уже более полугода. К примеру, кому-нибудь нужно скинуть небольшой файл при общении по аське. Я беру этот файл закидываю в определенную папку своего же компьютера, папка моментально сихронизируется и я делюсь с ссылкой на скачивание файла. То есть это некое “хранилище файлов”.

А вот данный плагин - WordPress Backup to Dropbox, автоматически отправляет резервные копии файлов блога в Ваш Dropbox. То есть, даже если у Вас сгорит винчестер на компьютере, а на хостинге ваш сайт случайным образом “удалится”, Вы с легкостью сможете выгрузить свои файлы блога с Dropbox’a.

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

Ниже можете посмотреть видео про то, как работает Dropbox (правда не на русском):

OFb0NaeRmdg

Регистрация в Dropbox

Установка и настройка плагина WordPress Backup to Dropbox

Ну а теперь перейдем непосредственно к плагину WordPress Backup to Dropbox, собственно ради чего и был данный урок.

Вот и все! Теперь в запланированное Вами время (например, раз в неделю) будут делаться резервные копии блога. От нас ничего не требуется. Воспользоваться данным плагином рекомендую в обязательном порядке!

Урок дописал, пойду в награду себе выпью вкусный чай:). Уже давно я себя так мотивирую, как ни странно:).

До завтра, друзья!

С помощью специального плагина Dropbox Handy Backup получает полный доступ к аккаунту Dropbox, используя его как хранилище резервных копий или как источник данных для задач резервного копирования.

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

Рекомендуемое решение для резервного копирования на Dropbox

Скачать

Купить!

Версия 8.0.6 от 2 октября 2019 . 105 MB
Программа резервного копирования Handy Backup. 1200 RUB за лицензию

Решение Standard позволяет без ограничений использовать Dropbox в качестве источника или хранилища резервных копий. Бесплатная пробная версия - 30 дней!

Преимущества использования автоматического бэкапа Dropbox

Handy Backup предоставляет многочисленные преимущества и возможности для работы с данными Dropbox:

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

Как выполнить резервное копирование Dropbox с помощью Handy Backup?

Чтобы создать задачу копирования на Dropbox с помощью программы Handy Backup, воспользуйтесь, пожалуйста, нижеприведённой инструкцией:

  1. Откройте программу Handy Backup и создайте новую задачу резервного копирования .
  2. Выберите данные для резервного копирования.
  3. На Шаге 3 выберите в левой части окна плагин Dropbox . Дважды щёлкните по "Создать подключение ".

  1. В новом диалоговом окне нажмите на кнопку "Подключиться к Dropbox ". Вы будете перенаправлены к интерфейсу Dropbox.
  2. Введите ваши данные для доступа к аккаунту Dropbox в поля диалога.

  1. Разрешите Handy Backup доступ к Dropbox. Возвращайтесь в мастер создания задачи.
  2. Продолжайте создавать новую задачу резервного копирования, как это описано в Руководстве Пользователя .
  3. Дайте вашей задаче имя и завершите работу мастера создания задач.

Ваша задача копирования на Dropbox готова к использованию и будет запущена по установленному вами расписанию; вы также можете в любой момент запустить её вручную.

Задачи восстановления данных из копии Dropbox и копирования Dropbox

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

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

Видеоурок: Автоматическое резервное копирование на Dropbox

Видеоурок по созданию резервных копии на Dropbox, а также бэкап данного хранилища с помощью Handy Backup.

Данное видео основываются на предположении, что Handy Backup уже установлен на компьютере. Если это не так, пожалуйста, скачайте и установите программу перед изучением данного видео.

Используйте Handy Backup, чтобы превратить Dropbox в надёжное, доступное из любой точки мира хранилище автоматически обновляемых резервных копий ваших данных!

Резервное копирование данных — очень важный аспект Вашей работы за компьютером. Любая система, любая техника подвержена сбоям, и необходимо обеспечить максимальную безопасность данных, без которых продолжение зачастую просто невозможно.

В первую очередь, это Ваши логины, пароли, адреса , которые Вы храните в специальных программах, например, в программе .

Это также различные книги, ролики, текстовые файлы, фото и картинки , которые Вам дороги, и которые Вам не хочется потерять.

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

Кроме того, в целях безопасности, на компьютер с хостинга часто скачиваются резервные копии сайтов и блогов , как файлов, так и .

Резервное копирование данных на компьютер — зачастую не самый лучший вариант. С компьютером тоже может что-то случиться. Можно, конечно, купить переносной жесткий диск, но, во-первых, это дополнительный расход средств. во-вторых такое копирование неудобно. Не исключены также ситуации, когда все носители по каким-то причинам могут пропасть.

Гораздо проще и удобнее организовать с помощью сервисов хранения данных , которые находятся в Интернете. Такие сервисы еще называют «облачными» сервисами хранения данных. Вам не нужно покупать дополнительные носители. Достаточно воспользоваться одним из таких сервисов.

Например, корпорация Microsoft предоставляет на сервисе SkyDrive бесплатно пользователям целых 25 Гбайт . Но сейчас мы с Вами поговорим о другом сервисе хранения данных , который называется

Всем привет.

Каждый день на просторах всемирной паутины умирают сотни сайтов, то ли по причине вебмастеров, которые чистосердечно забрасывают свои ресурсы, так и не дождавшись ошеломляющих заработков.

То ли по техническим причинам хостинга, то ли по причине различных болячек в виде сифилиса, герпеса, компьютерных червей и прочего.

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

А все почему? Скорее всего, было просто лень настроить автоматическое резервное копирование, изо дня в день, живя мыслями, что ничего не случиться и откладывая это дело на потом.

Так давайте же не будем брать «хорошие» манеры от таких вебмастеров и настроим автоматическое резервное копирование всех файлов блога на удаленный сервис Dropbox.

Чем хорош данный вариант создания бэккапа?

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

Вторая приятность – это абсолютно БЕСПЛАТНО , вам не нужно оплачивать дополнительное место на хостинге, которое стоит 185748593 миллионов рублей, dropbox предоставляет 2ГБ, для хранения любых файлов, что вполне хватает для резервных копий.

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

Жесткий диск на домашнем компьютере или ноутбуке постоянно находится в эксплуатации: детишки игрульки ставят одну за одной, просмотр фильмов, прослушивание музыки, все это ежеминутно приближает ЖД к гибели.

Также, особое внимание стоит уделить нашим замечательным электросетям, которые выдают по 180-230 вольт, вместо положенных 220 вольт, в ночной период времени.

Что нам понадобиться для создания автоматического резервного копирования?

В первую очередь нужно пойти на сервис Dropbox и зарегистрироваться, процесс регистрации я опишу ниже.

Как получить 2 GB пространства в свое распоряжение от сервиса Dropbox?

Переходим на сайт , обратите внимание, ссылка является партнерской, многие пользователи обходят стороной такие ссылки.

Попадают на сайт и тихонько радуются в душе с мыслями «Хрен Борьке, не Получится У него Навариться На Мне!».

Тем самым, такие пользователи сами ограждают себя от различных вкусностей. К примеру, если взять , ребята, которые пройдут регистрацию по моей партнерской ссылке, получат в подарок 3 месяца бесплатного использования данного хостинга. Мелочь? Зато приятно…

Не поверите, я сам раньше был таким, вот тютелька в тютельку как описано выше, про строчку и с мыслишками там разными…

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

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

После прочтения ищем заветную кнопку, получить 2 гБ на личные нужды – РЕГИСТРАЦИЯ.

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

Выбирайте тип аккаунта, в моем случае – это «Базовый аккаунт Dropbox » и жмите продолжить.

Всего несколько секунд ожидания и программное обеспечение начнет закачиваться на ваш компьютер.

Если по каким – либо причинам этого не произошло в автоматическом режиме, кликните по соответствующей ссылке для повторной загрузки, уж ручной метод пройдет на 99,9%.

После успешной загрузки, запустите данный файл, произойдет установка программы на компьютер.

После установки вы увидите окошечко, где нужно ввести адрес электронной почты и пароль, указанные при регистрации, жмите войти. Появится радостное окно приветствия.

Это будет означать, что вы получили свои заветные 2гб пространства.

По умолчанию данная папка для хранения файлов расположилась на диске С (системный диск). Чтобы изменить месторасположение, нужно проделать несложные действия.

Опустите свой взгляд в правый нижний угол, где у вас находятся часы. Там будет маленькая, синяя коробочка, нажимайте на ней правой кнопкой мыши и заходите в настройки.

Переходите на вкладку «Аккаунт». Жмите кнопку «Переместить» и указывайте путь, где хотите хранить данную папку, я указал путь: D:\Dropbox .

Чтобы убедиться в применении настроек, зайди на свой локальный диск «D», и просмотрите, есть ли папка с именем Дропбокс.

Приступаем к установке и настройке плагина WordPress Backup to Dropbox

Чтобы вы не блукали по интернету и не искали данный плагин, я подготовил для вас ссылку , которая приведет на сайт с плагином.

Достаточно будет нажать большую оранжевую кнопку «Downloud» и плагин WordPress Backup to Dropbox загрузится к вам на ПК.

P.s. Мою светлую голову посещают мысли, если вы интересуетесь резервным копированием файлов, то уже умеете устанавливать плагины. И я не буду описывать этот процесс трёхсотый раз.

Установили плагин, активировали его и переходим к настройкам. В первую очередь нужно связать созданный аккаунт на Dropbox с плагином, для этого жмите кнопку «Авторизация».

Скорее всего, потребует ввести логин и пароль. Если не потребуется, то вы увидите такую страницу.

Разрешаем доступ. После чего нас поздравят с успешным соединением.

Возвращаемся в админку блога к плагину WordPress Backup to Dropbox и жмите кнопку продолжить.

После всех этих манипуляций откроется окно настроек данного плагина. А внизу будет мелькать сообщение, что в вашей папке Dropbox появилась новая папка с определенным именем.

Настройки плагина очень простые. Вам всего лишь нужно задать периодичность резервного копирования. У меня это раз в неделю.

По желание можете исключить файлы и каталоги, которые не нуждаются в резервном копировании. У меня таких не оказалось, то есть все файлы и папки будут отосланы в архив.

Теперь можно спать спокойно и не беспокоится о том, что в один прекрасный день вашего блога не станет.

Я уверен, на 100000%, что многие просто прочтут статью, сделают себе пометку, в виде «Нужно попробовать». Через 10 минут забудут... И на этом резервные копии так и не будут запланированы.

Также данный сервис можно использовать для обмена файлами с друзьями. Для этого нужно просто закинуть нужный файл, программу, видео, картинку в папку Dropbox.

Иногда очень удобная вещь...

Что же, ребятки, дерзайте. На этом у меня все. Если у вас остались вопросы, задавайте их в комментариях.

Подписывайтесь на обновления блога и получай анонсы к себе на почту.

С уважением, Михед Александр.

Уже несколько лет как появилась возможность любому смертному желающему арендовать не только 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 в других странах, а в скрипт добавил только префикс к названию бэкапов, таким образом все бэкапы сливаются в одну папку, но их можно отличить очень просто.