Энциклопедия мобильной связи

Облачное резервное копирование. Резервное копирование бесплатно, да еще и в облака! Прочие типы данных

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

Нельзя сказать, что опасения многих пользователей по поводу загрузки своих данных на чужие серверы беспочвенны, особенно если те расположены в США или где-либо еще и не ясно, кто к ним имеет или может получить доступ. Кроме того, эффективная работа с облачным хранилищем возможна лишь при быстром соединении с Интернетом и скоростью загрузки не менее 5 Мбит/с, что во многих местах пока еще недостижимо.

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

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

За и против: облачные хранилища для моментальных копий

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

Правильный выбор сервиса

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


В своих условиях пользования Google оставляет за собой пугающе
широкие права на использование загруженных данных

Кроме того, очевидно, что американский провайдер не особо следует принципу конфиденциальности. Условия пользования гласят: «Загружая […] содержание в наших Службах, вы предоставляете компании Google и ее партнерам действующую во всем мире лицензию, которая позволяет нам использовать это содержание […], воспроизводить […], публиковать его […], открыто отображать[…]».

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

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

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


Пользователи, располагающие крупным пространством в Сети, могут организовать собственное облачное решение с Nextcloud

И если отечественные сервисы действуют просто чисто с правовой точки зрения, то швейцарский провайдер Tresorit отдельно выделяется своими возможностями обеспечения конфиденциальности - прежде всего благодаря полному сквозному шифрованию по принципу «нулевого разглашения»: пароль находится лишь у пользователя, у службы нет никакого доступа к информации.

Облачный бэкап с телефона и ПК

(1) Google Backup & Sync - клиентское ПО для компьютера, синхронизирующее любые папки и внешние диски с «Диском Google» (2) Так же, как и другие сервисы, «Диск Google» предлагает приложение для смартфона, позволяющее получить доступ к файлам и вне дома

В облако - в зашифрованном виде

Boxcryptor способен загружать файлы в облако так, чтобы ни провайдер, ни спецслужбы, ни хакеры не получили к ним доступ - шифруя каждый файл перед загрузкой:
> Как это настроить . Программа для синхронизации от облачного сервиса уже должна быть установлена на компьютере. При установке Boxcryptor необходимо создать учетную запись пользователя, после чего добавляется виртуальный диск (в нашем случае «X:\»). На нем вы найдете подпапки для обнаруженных облачных служб (бесплатная версия Boxcryptor поддерживает только один сервис). При переходе из виртуального диска в папку, Boxcryptor для всех скопированных или созданных файлов и папок задает вопрос, нужно ли шифровать этот элемент.

При положительном ответе утилита закодирует файл и скопирует его с расширением «.bc» в папку облака. В веб-интерфейсе сервиса данные файлы открываться не будут.


Файлы, перенесенные через виртуальный диск Boxcryptor в облако, будут заранее кодироваться автоматически на компьютере

Объемы хранилищ и удобное ПО для синхронизации

Все сервисы, представленные в нашей таблице, предлагают ПО для синхронизации под Windows (а некоторые даже для Android и iOS). В них следует один раз настроить папки для бэкапа, из которых новые или измененные файлы сразу же будут загружаться в облачное хранилище. Эти решения отлично подходят для первого этапа (защита в реальном времени) и могут дополнить третий этап (защита от катастроф), благодаря чему вам не нужно будет часто делать полные резервные копии.

Но так как даже облачные сервисы иногда не работают или бывают недоступны (к примеру, при длительных проблемах с подключением к Интернету), ни в коем случае нельзя отказываться от регулярного резервного копирования на локальные жесткие диски.

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

Как сделать резервное копирование автоматическим, понятным и главное — бесплатно? Читайте об необычном варианте в этой статье.

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

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

Резервное копирование файлов в «облако»

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

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

Второе преимущество – это доступность ваших данных откуда угодно, где есть интернет. Но это может стать и основным недостатком, если интернета нет.

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

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

Что будем резервировать?

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

Давайте теперь посмотрим, какие облачные хранилища подойдут для резервного копирования файлов. Конечно, есть специализированые платные облачные хранилища для резервных копий, но я думаю, что вас больше интересуют бесплатные варианты, как и меня. Но у бесплатных предложений есть один недостаток – мало облачного пространства. Обычно средний объем бесплатного облачного диска колеблется в районе 5-10 Гбайт. Этого мало для полного резервного копирования(бэкапа, backup), но если хорошенько подумать, то нам много и не нужно.

При выборе облачного хранилища для резервного копирования файлов, я руководствовался тремя характеристиками: скорость передачи файлов, объем хранилища и удобство использования. Я выделил три категории для самых распространенных типов файлов у обычных пользователей – фото, документы и музыка.

Номинация «Для фото». Победитель — SkyDrive

Могу предложить вам два варианта: Яндекс Диск и 4Sync . Яндекс Диск предоставляет 10 Гбайт облачного хранилища, имеет встроенный проигрыватель муз. файлов и максимальную скорость передачи данных среди всех облачных дисков, о которых я писал, его обзор можете прочитать . 4sync дает 15 Гайт, скорость тоже на высоте. Хотя этот сервис зарубежный, но ин имеет русскоязычный интерфейс и прост в использовании. Он умеет проигрывать не только музыку, но и видео, чем мне очень нравится. Оба эти сервиса хорошо подходят для хранения фото, а если вам нужно что большее?

В таком случае предлагаю вам взглянуть на . У него такой интерфейс, что он приспособлен для фото. Рекомендую почитать его обзор . Скорость передачи файлов у него средняя, для новых пользователей предоставляют 7 Гбайт, что тоже не плохо. В SkyDrive очень удобно просматривать фото, скорость работы очень высокая, даже с большими фото. Если фотографий у вас меньше семи гигабайт, то SkyDrive станет для вас отличным решением. Как вариант, старые фото можно хранить на Яндекс Диске или 4Sync, а более новые в SkyDrive.

Номинация «Для документов». Победитель – SkyDrive

Опять SkyDrive, вы спросите? Да, именно он. Потому что, более удобного решение для хранения и работы с документами онлайн я не встречал. Можно создавать и редактировать документы в браузере, сохраняя их в привычном для вас формате(docx). Все, о чем я здесь говорю, я описал в обзоре SkyDrive. Если вы еще не прочитали его, то сделайте это.

Альтернативным решением для работы с документами является . Диск Гугл в прошлом носил имя Документы Google, возможно вы о них слышали. Здесь тоже можно создавать и редактировать документы, правда, их сохранение происходит в специальном формате, что по душе не всем. Таким образом, победителем будет SkyDrive.

Номинация «Для музыки» Победитель – Яндекс Диск

Я уже немного описал Яндекс Диск в первой номинации, приглашаю вас прочитать его обзор. Почему именно он? Основным конкурентом для него будет 4Sync из-за большей скорости передачи данных и большего объема хранилища. Для вас это может стать решающим, но с помощью 4Sync не очень удобно слушать музыку прямо браузере, в отличии от Яндекс Диска. В нем есть что-то на подобии музыкального проигрывателя. Композиции будут по очереди воспроизводиться, если открыть какую-нибудь песню в любой папке.

Настройка резервного копирования

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

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

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

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

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

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

Резервная копия в облаке – надёжный способ хранить ваши данные онлайн и получать к ним впоследствии удобный доступ из любой точки мира. Handy Backup содержит инструменты для резервного копирования на популярные облачные сервисы или в облака по протоколам WebDAV и S3.

Какие облака для хранения данных поддерживаются?

В Handy Backup реализованы четыре типа поддержки сервисов облачного хранения: прямой доступ к облаку данных через API, доступ через интерфейсы WebDAV и S3, доступ с использованием сторонних инструментов синхронизации и собственное облако HBDrive.

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

Резервное копирование на облачные хранилища данных через WebDAV

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

  • Бэкап облака mail.ru через экспериментальный порт https://webdav.cloud.mail.ru;
  • Доступ к резервным копиям в облаке хранения данных Apple iCloud по WebDAV;
  • Использование WebDAV для домашних облаков хранения данных.

Синхронизация с облаком через локальную папку

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

Совет: Handy Backup может сохранять бэкапы в локальных папках. Для автоматического резервного копирования в облачное хранилище с помощью синхронизируемой папки достаточно создать задачу локального бэкапа в эту папку с помощью инструмента Computer.

Собственное облако для бэкапа данных - HBDrive

Лучший облачный сервис для хранения файлов в резервных копиях – специализированное облако! Все решения Handy Backup имеют доступ к хранилищу HBDrive , предназначенному для облачного резервного копирования корпоративных данных и файлов пользователей.

Преимущества облака HBDrive для хранения данных: защищённое физическое хранилище высокой надёжности; возможность сидинга (пересылки оффлайн) больших начальных объёмов данных; быстрый канал передачи данных; доступная цена хранения информации.

Скачать

Купить!

Версия 8.0.4 от 10 июля 2019. 104 MB
Программа резервного копирования Handy Backup. 9200 RUB за лицензию

Самое мощное решение для одной машины в линейке Handy Backup, Office Expert позволяет вам осуществлять резервное копирование в облако для любых данных!

Преимущества хранения резервных копий данных в облаке

Физически выделенное хранилище информации

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

Удобный доступ к данным из любой точки мира

Бэкап в облако позволяет получить доступ к резервным копиям вашей информации откуда угодно по сети Интернет. Это может быть использовано для быстрого клонирования или зеркалирования рабочей среды (например, при резервном копировании 1С в облако).

Совместный доступ к резервным копиям данных

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

Автоматический бэкап в облако с помощью Handy Backup

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

Возможности Handy Backup для бэкапа и восстановления из облака

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

  • Хранение данных в исходном формате – быстрый доступ к любому файлу в копии;
  • Различные методы бэкапа – инкрементальный, дифференциальный, смешанный;

  • Шифрование и сжатие – при необходимости бэкапы могут быть сжаты и зашифрованы;
  • Работа по расписанию – запуск в назначенное время или по определённому событию;

  • Хранение нескольких версий данных – с удобно организованными временными метками.

На заметку: вы можете использовать облака не только как хранилище, но и как источник данных для бэкапа; таким образом, можно скопировать данные из одного облака в другое, или даже из одного аккаунта в другой на том же самом облаке!

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

Попробуйте резервное копирование в облако с Handy Backup прямо сейчас, скачав полную версию программы на
30-дневный бесплатный пробный период !


Смотрите также

Основное различие резервного копирования в облако от классического, локального бэкапа заключается в том, что ваша резервная копия храниться, на каком-то удаленном сервере, который в свою очередь может располагаться в любой точке мира. Это может быть интересно, если например, у вас нет лишних аппаратных ресурсов или внутренняя политика безопасности в организации обязывает хранение резервной копии в территориально удаленном месте, на случай пожара, подтопления или других чрезвычайных ситуации. Но при этом надо понимать, что в отличии от локального бэкапа, в котором используют для передачи данных высокоскоростные соединения типа USB (до 5 Гбит/с), Ethernet (до 10 Гбит/с), Fibre Channel (до 8 Гбит/с) или SAS (до 6 Гбит/с) с помощью которых вы можете подключить портативных устройств, локальные дисковых систем хранения данных и ленточных библиотек, ахиллесова пята резервного копирования в облако является скорость передачи данных, ограниченная интернет-каналом. Т.е. обычно входная пропускная способность такого канала передачи данных варьируется от 10 до 100 Мбит/с (исходящий трафик бывает менее 10 Мбит/с), но и этот канал использовать на 100 % чаще всего нет возможности, из-за других повседневных задач.

ПАРАМЕТРЫ РЕЗЕРВНОГО КОПИРОВАНИЯ

Как и в классическом резервном копировании, существует такое понятие «Окно резервного копирования» - это период времени в течение, которого можно без особых последствий на рабочие процессы выполнить бэкап. В базовом варианте бэкап выполняется в ночное (не рабочее) время, т.е. это 8-10 часов, за которое можно сделать как полное, так и инкрементальное резервное копирование. В зависимости от организации и ее бизнес-процессов, окно резервного копирования может быть часы, минуты, или даже секунды, для систем, работающих в режиме 24 на 7, остановка в работе которых не допустима. Таким образом, перед выбором локального или облачного бэкапа, зная ваши объемы и пропускную способность сети не трудно вычислить необходимое время окна резервного копирования. Окно резервного копирования можно значительно уменьшить при грамотной настройки плана резервного копирования и использовании дополнительных функций, как например , инкрементальное и дифференциальное резервное копирование. Данный функционал поддерживают все современные решения корпоративного уровня: Acronis Backup, Backup Exec, Veritas NetBackup, Veeam. Отдельным способом для организации резервного копирования являются снэпшоты (snapshots), которые позволяют быстро и не замедляя работу системы создавать моментальные снимки жесткого диска. Эти и другие приемы можно использовать для тонкой настройки стратегии локального или облачного резервного копирования.

РЕЗЕРВНОЕ КОПИРОВАНИЕ В ЧАСТНЫЕ ОБЛАКА

Разберемся в деталях, российские дата центры, предлагающие услуги резервного копирования в облако, за основу своих решений берут общеизвестные системы резервного копирования от , по сути просто предоставляя вам RDP доступ к отдельной виртуальной машине, на которой предустановлен сервер резервного копирования с подключенной дисковой полкой. Но это не все, для подключения к серверу («облаку») вам понадобится установить на ваш защищаемый сервер или рабочую станцию агент (клиент) и выполнить коммутацию этого агента (клиента) с сервером резервного копирования. Стоимость таких услуг, для файловых серверов, как правило, рассчитывается только исходя из объема выделенного места в хранилище в единицу времени, часто за минимальную единицу расчета принимают 1 терабайт в месяц. На сегодняшний момент средняя стоимость такой услуги составляет примерно 15 - 20 тыс руб. за 1 Тб в месяц, то есть в среднем стоимость хранения резервной копии в облаке размером 1 Терабайт обойдется около 200-250 тыс. руб. в год. Цена увеличится если включить расширенную поддержку приложений и баз данных.
Ни кого не обижая, назовем этот вариант «ленивый», потому что существует, как минимум еще два способа организовать удаленное хранение, рассмотрим их ниже.

РЕЗЕРВНОЕ КОПИРОВАНИЕ В ПУБЛИЧНЫЕ ОБЛАКА

При изучении вопроса многие не берут в расчет, что почти каждая корпоративная система резервного копирования по умолчанию уже имеет встроенный функционал (коннектор) для бэкапа в облако. Так, например , и поддерживают публичные облака (хранилища) от Microsoft Azure, Amazon S3 и Google Cloud, а поддерживает свой собственный Acronis Cloud Storage (с дата центром в том числе на территории РФ). Если у вас уже есть система резервного копирования, то все что вам потребуется это зарегистрироваться на площадках и активировать хранилище в системе (очень просто). Конечно, это стоит денег, но в сравнении с локальными дата центрами, у которых масштабы безусловно меньше, стоимость несопоставима. Для тестирования хранилища у всех имеется стартовый бесплатный объем от 5 до 10 Гб.

И последний, не менее рабочий вариант, это приобретение отдельных лицензии на , и место в дата центре (colocation) для установки оборудования. В этом случаи все остается под вашим контролем и ответственностью.

РЕЗЕРВНОЕ КОПИРОВАНИЕ В ОБЛАКО С ПОМОЩЬЮ ACRONIS BACKUP

Рассмотрим этот вариант на примере Acronis Backup Advanced. Для этого необходимо добавить новый тип хранилища резервных копий.


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


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


Как видите все очень просто, а стоимость составит около 25 тыс. руб. в год за 1 Тб данных и чем больше объем или срок аренды хранилища, тем ниже стоимость. Аналогично просто настроить резервное копирование в облако для Backup Exec, при этом стоимость аренды публичных облаков еще выгоднее.

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

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

В предыдущих двух статьях я настраивал LAMP на VPS и прикручивал к нему nginx . Следующее, о чем сразу начинаешь думать - как бы все это не потерять. То есть речь заходит о резервном копировании.

Обсудим по порядку: что, куда и как бэкапить.

Что

  1. Все конфиги, которые вы с кропотливо редактировали (/etc )
  2. Все пользовательские файлы (/home , /root )
  3. Базы данных (будем иметь в виду MySQL)

Куда

Нынче всё уходит в «облака». Резервные копии хочется складывать туда же.

Весьма интересным вариантом для хранения бэкапа оказался Яндекс.Диск. У него есть несколько преимуществ:

  • Бесплатные 10 Гб
  • Он находится в России, и файлы очень быстро на него заливаются
  • Умеет работать по протоколу WebDAV, что позволяет загружать на него данные из консоли с помощью команды curl

Как

Вот рецепт. Логинимся root-ом и создаем скрипт:

Chmod 0700 backup-now.sh

Текст скрипта будет примерно таким:

#!/bin/bash SERVER_NAME="server1" TIME=`date +%Y-%b` FS_FILE=/tmp/$SERVER_NAME-fs.$TIME.tar.gz MYSQL_FILE=/tmp/$SERVER_NAME-mysql.$TIME.sql.gz # Archiving filesystem tar -czf $FS_FILE /etc /root /home # Archiving databases mysqldump -u root --password=qwerty --all-databases | gzip > $MYSQL_FILE # Uploading to the cloud curl --user USER:PASSWORD -T "{$FS_FILE,$MYSQL_FILE}" https://webdav.yandex.ru/ # Cleanup unlink $FS_FILE unlink $MYSQL_FILE

Первый раз лучше запускать команды по одной, комментируя остальные. Если все пройдет хорошо, то в вашем Яндекс.Диске появятся два архива.

Теперь для автоматизации надо добавить симлинк на backup-now.sh в /etc/cron.daily (или /etc/cron.weekly). Только имейте в виду, что на некоторых системах (в частности, на Debian) у симлинка надо убрать расширение ().

Переменная $TIME подобрана так, что у вас будут скапливаться бекапы от последнего числа каждого месяца. Если не хотите захламлять облако, то это можно убрать из скрипта, однако практика показывает, что старые копии могут оказаться полезными. Просто надо будет периодически удалять старьё.

А если не хочу Яндекс.Диск?

Очевидно, заливать можно на любой ресурс, поддерживающий WebDAV. Существуют сервисы, открывающие доступ по WebDAV к Dropbox или Google Drive (например, Otixo , SMEStorage , DropDAV). Ходят слухи, что SkyDrive работает через WebDAV. А также есть надежда, что поддержка появится в Дропбоксе из коробки.

P.S. Шифрование архивов с помощью GnuPG

Поскольку бекапы содержат кучу секретной информации (пароли, данные), то имеет смысл их шифровать:

GPG_COMMAND="gpg -c -z 0 --batch --passphrase XXXXXXXXXX" FS_FILE=/tmp/$SERVER_NAME-fs.$TIME.tar.gz.gpg MYSQL_FILE=/tmp/$SERVER_NAME-mysql.$TIME.sql.gz.gpg # Archiving filesystem tar -cz /etc /root /home | $GPG_COMMAND > $FS_FILE # Archiving databases mysqldump -u root --password=qwerty --all-databases | gzip | $GPG_COMMAND > $MYSQL_FILE . . .

Приветствую вас, дорогие читатели моего блога. Вы, наверное, слышали о программе, позволяющей хранить файлы на сервере Яндекса. Если нет, добро пожаловать на soft.yandex.ru - она там есть.

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

Что нам потребуется

  • 1. Сервер, логин, пароль и название базы данных mysql, если, конечно, ваш сайт работает с этой базой данных;
  • 2. Путь от корня диска до вашего сайта (спрашивайте у службы поддержки хостинга);
  • 3. e-mail и пароль, которые вы используете для входа в Яндекс (это и данные от Яндекс диска).

Работа с файлом бекапа сайта на Яндекс диск

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

$dbhost = "localhost"; //Адрес MySQL сервера.

В строчке ниже, заменяем "database_user" на своё значение имени пользователя базы данных mysql.

"database_name" - на название базы данных mysql.

Вместо "site_dear_hear" вставляем свой путь к сайту от корня диска.

После этого, переходим к настройке Яндекс диска:

  • 1. " " заменяем на свой адрес электронной почты в Яндексе;
  • 2. "yandex_password" на пароль от почты Яндекса;
  • 3. Создаём в корневой папке Яндекс диска директорию "backup" (туда будут сохраняться ваши резервные копии).

Всё. Сохраняем файл и загружаем на сервер.

Не рекомендую его загружать в корневой каталог сайта, потому что будут постоянно обращаться к нему всякие роботы, из-за чего Яндекс диск будет заполняться лишними копиями бекапов. Лучше создать папку, например "a3hd7siq8a7s9xeeewwwerw-0-032-_2", чтобы никто, кроме вас и cran не знал, где он у вас.

Cran - это планировщик заданий: специальная программа, при помощи которой вы можете ставить запуск скриптов по расписанию, но как им пользоваться не знаю, поэтому здесь помочь не смогу.

Что делать, если несколько сайтов

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

  • 2. Замените site1.ru, site2.ru и т. д. на адреса своих сайтов. Кроме этого, не забудьте прописать после него папку, в которой расположен этот скрипт;
  • 3. Сохраните изменения и загрузите на сервер, поместив его как можно дальше от корневой папки сайта.

Если у вас меньше пяти сайтов, просто удалите строки, имеющие вид:

Echo " "; $response = file_get_contents("http://site5.ru/beckup.php"); echo iconv("Windows-1251", "utf-8", $response);

Если у вас сайт в зоне.рф, вам, перед тем, как прописывать адрес, придётся переводить в Panycode

Надеюсь, что статья вам была полезна.

Жду комментариев.

О резервном копировании на внешние носители в Windows 7 или 8.1 написано немало. Но как быть, если вы используете несколько устройств (например, компьютер, планшет, телефон под управлением Windows)? И вам срочно нужны данные, скажем, документы, хранящиеся на компьютере или каком-то другом устройстве? На такой случай лучше всего создать резервную копию в «облаке». Кстати, туда же я рекомендовал бы поместить и ваши архивы. Например, архивы тех же документов. Кстати, это очень полезно и в том случае, если вы используете в своем ноутбуке твердотельный диск SSD вместо обычного жесткого диска . В данной статье мы рассмотрим основные «облачные» хранилища – OneDrive от компании Microsoft, Google Диск, Dropbox и Яндекс Диск.

Использовать OneDrive весьма выгодно, если вы работаете с Windows 8.1. В таком случае объем хранилища может составить 15 Гбайт, а если вы еще и счастливый обладатель подписки Office 365, то объем хранилища OneDrive и вовсе не ограничен. Новые пользователи Google Drive начинают с 15 Гбайт. Dropbox поначалу предоставляет лишь 2 Гбайт свободного пространства, но большинство пользователей быстро увеличивает этот объем до 5 Гбайт и более. Стоимость подписки на 1 Tбайт составляет 10 долл. в месяц или 100 долл. ежегодно.

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

Для начала работы с Dropbox вам необходимо зайти на сайт www.dropbox.com, зарегистрироваться и выбрать соответствующий тарифный план для персонального использования (см. экран 1). После этого вам будет предложено загрузить соответствующий пакет для установки (см. экран 2).

Экран 1. Dropbox

Фактически, выборочная синхронизация позволяет указать, какие папки вы хотите синхронизировать с Dropbox. Это безусловно удобно, если у вас в руках нетбук или компьютер с небольшим жестким диском (и нет с собой внешнего). Учтите, что папки для выборочной синхронизации должны находиться внутри вашей папки Dropbox. Таким образом, для выборочной синхронизации необходимо скопировать файлы, которые вы хотите перенести (скопировать) в «облачное» хранилище Dropbox в соответствующую папку на диске.

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

Для того чтобы загрузить Google Disk, вам необходимо воспользоваться своей учетной записью к службам Google, а затем выбрать службу Google Disk (см. экран 4).

Можно настроить следующие параметры.

  • Отключить аккаунт. Синхронизируйте папку Google Диска с другим аккаунтом Google (не рекомендуется).
  • Расширить пространство для хранения данных. Приобретите дополнительное пространство.

Параметры синхронизации

  • Синхронизировать только некоторые папки с этим компьютером. Установите флажки рядом с папками из раздела «Мой диск», чтобы включить синхронизацию. Снимите флажки рядом с папками, которые не нужно синхронизировать.
  • Синхронизировать объекты, к которым у меня есть доступ. Если вы работаете в новом интерфейсе Диска, переместите файлы и папки из раздела «Доступные» в папку «Мой диск», чтобы синхронизировать их с компьютером. Если вы пользуетесь классической версией Диска, добавьте папки и файлы из раздела «Доступные мне» в папку «Мой диск».

Расширенные

  • Запускать Google Диск автоматически при включении компьютера. Google Диск будет запускаться и синхронизировать папку на компьютере с разделом «Мой диск».
  • Отправлять отчеты о сбоях и статистику использования в Google. Отправляйте информацию в Google, чтобы можно было улучшить работу сервиса.
  • Прокси-сервер. Вам доступны две функции: «Прямое подключение » и «Автоматически определять настройки прокси-сервера».
  • Прочие. Отображение значков статуса синхронизации файлов.

Выбор файлов и папок для синхронизации с компьютером. Все документы, таблицы, презентации, формы, рисунки и сводные таблицы Google синхронизируются с папкой Google Диска на компьютере. Чтобы отключить синхронизацию, выполните следующие действия:

1. Нажмите на значок Google Диска.

  • На компьютерах Mac его обычно можно найти на панели «Меню» в правой верхней части экрана.

2. Выберите «Настройки».

3. Снимите флажок «Синхронизировать только некоторые папки с этим компьютером».

4. Нажмите кнопку «Применить изменения».

Раздел «Мой диск» (все файлы или отдельные папки). Все файлы и папки из раздела «Мой диск» синхронизируются с папкой Google Диска на вашем компьютере. Чтобы настроить синхронизацию отдельных папок, выполните следующие действия:

1. Переместите файлы в папки, которые планируете синхронизировать.

2. Нажмите значок Google Диска на рабочем столе.

  • На компьютерах Mac его можно найти на панели «Меню» в правой верхней части экрана.
  • На компьютерах Windows значок находится на панели задач в правом нижнем углу экрана.

3. Выберите «Настройки».

4. Установите флажок «Синхронизировать только некоторые папки с этим компьютером».

5. Выберите папки, которые необходимо синхронизировать с папкой Google Диска.

6. Нажмите кнопку «Применить изменения».

Работа с OneDrive

Если вы используете операционную систему Windows 8.1, то хранилище One Drive предоставляется вам по умолчанию. OneDrive - бесплатное интернет-хранилище, предоставляемое вместе с учетной записью Microsoft . Начать использование OneDrive просто. Вы можете добавить в OneDrive файлы, уже сохраненные на компьютере, скопировав или переместив их. Вы можете сохранять новые файлы в OneDrive, чтобы использовать их с любого устройства и делиться ими с другими. А если в вашем компьютере есть встроенная камера, вы можете автоматически сохранять копии фотографий в OneDrive, чтобы всегда иметь резервную копию. В отличие от предыдущих хранилищ, вы сможете сохранять файлы непосредственно в One Drive, не сохраняя их на компьютере.

Функции классического приложения встроены в Windows

OneDrive синхронизирует файлы при регистрации в системе с учетной записью Microsoft. Если классическое приложение устанавливается на компьютере под управлением Windows 8.1, программа установки не появляется. Будет установлен компонент, который позволит задействовать Office для работы с документами OneDrive одновременно с другими пользователями, но другие компоненты не будут установлены. Если вы работаете под управлением Windows 7 или 8, то сможете загрузить классическое приложение для управления OneDrive по адресу onedrive.live.com/about/en-us/download/.

Для пользователей Windows 8.1 достаточно сделать следующее (см. экран 6):

  1. Откройте OneDrive в Windows Explorer.
  2. Щелкните правой клавишей по файлу (папке) и выберите «Сделать доступным автономно» или «Сделать доступным только через Интернет».

Как показано на экране 8, для синхронизации Яндекс Диска достаточно скопировать соответствующие файлы в папку Яндекс.Диск. На первый взгляд такой подход к синхронизации более всего напоминает Google Disk. Отчасти это верно.

Используя веб-приложение Яндекс.Диск вы сможете скачать соответствующее приложение для Windows. Для выборочной синхронизации необходимо войти в панель настроек Яндекс Диска и выбрать вкладку «Синхронизация». Если вы снимете галочку с соответствующей папки, она синхронизироваться не будет. Чтобы загрузить файлы в папку, синхронизация которой отключена, достаточно просто перетащить файлы в нее в Проводнике. Таким образом, в данном случае содержимое корневой папки Яндекс Диска синхронизируется всегда, а содержимое подпапок может быть синхронизировано по вашему выбору.

Основное отличие Яндекс Диска от Dropbox и Google Disk состоит в том, что сохранять файлы в Яндекс.Диск вы можете непосредственно из Microsoft Office.

Таким образом, используя «облачные» хранилища, вы можете не только увеличить на своем жестком диске, но и обеспечить резервную копию наиболее важных ваших файлов (документы, фото и т.д.). Если же сравнивать удобство использования выборочной синхронизации, то вывод напрашивается однозначный. И у Dropbox, и у Google Disk выбор настраивается на уровне папки. Таким образом, нужно зайти в диалог «Настройки» соответствующей службы и вручную указать, какие папки синхронизируются, а какие нет. Решение же, поддерживающее контекстное меню в Проводнике и позволяющее настроить синхронизацию и размещение файлов существует на сегодня только у Microsoft.

– удобное, функциональное и дешёвое решение. Handy Backup позволяет обойтись без использования популярного интерфейса WebDAV для Яндекс.Диска, используя вместо него прямой доступ.

Автоматическое резервное копирование на Яндекс.Диск

С помощью Handy Backup вы можете выполнять бэкап на Яндекс.Диск для любых данных в автоматическом режиме, по расписанию с интервалами от месяцев до минут или по событию, а также вручную. Вы можете автоматизировать копирование любых данных, таких, как:


Пользовательские данные:

  • Файлы и папки (с возможностью поиска по маске имени)
  • Библиотеки Windows, пользовательские папки
  • Microsoft Outlook, файлы и папки других почтовых клиентов

Серверные типы данных:

  • Базы данных MS SQL, MySQL, MariaDB, PostgreSQL, Oracle, IBM DB2, Lotus Notes
  • Microsoft Exchange
  • Контент FTP, SFTP или FTPS серверов с шифрованием по SSL/TLS
  • Веб-сайты (статический и динамический контент)


Виртуальные машины и хранилища:

  • Hyper-V, VMware
  • Серверы, массивы и хосты виртуальных машин
  • Облака Google Диск, Dropbox, Amazon S3, OneDrive, Box, 4shared и другие
  • Любые облака по интерфейсу WebDAV

Прочие типы данных:

  • Образы дисков
  • Данные 1С в файловой и SQL-версиях, для 1С 7.7 и решений 1С 8, например, 1С 8.2
  • Файлы, папки и библиотеки сетевых машин (для сетевых решений)
  • Реестр Windows

Преимущества решения Handy Backup для организации бэкапа на Яндекс.Диск

Защита ваших данных

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

Сертификация продукта

Открытое хранение копий в исходных форматах

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


Версия 7.9.4 от 15 сентября 2017. 66.1 MB
Программа резервного копирования Handy Backup. 7400 RUB за лицензию

Решение Office Expert позволяет копировать любые типы данных с одного компьютера на Яндекс.Диск автоматически по расписанию, как напрямую, так и по WebDAV. Бесплатный пробный период 30 дней!

Как создать задачу резервного копирования на Яндекс.Диск в Handy Backup?

Вместо устаревшего WebDAV бэкапа на Яндекс.Диск для организации резервного копирования теперь применяется новый плагин Handy Backup Yandex Disk с доступом к облачному сервису через интерфейс RestAPI. Чтобы воспользоваться им, выполните следующие действия:

  1. Откройте Handy Backup и создайте новую задачу с помощью кнопки на панели или меню.
  2. Выберите задачу резервного копирования.
  3. Перейдите к Шагу 2 и выберите нужные данные для создания резервной копии.
  4. На Шаге 3 выберите в списке хранилищ плагин Yandex.Disk , щёлкните по нему дважды.


  1. В открывшемся окне дважды щёлкните “Новая конфигурация” . Откроется новый диалог.

  1. Нажмите кнопку “Подключиться к Yandex.Disk” . Вы будете перенаправлены в браузер.
  2. В окне браузера введите логин и пароль для доступа к Яндекс.Диску. Подтвердите выбор.


  1. Вернитесь в окно Handy Backup и выберите созданную конфигурацию.
  2. Далее продолжайте настраивать задачу как обычно. На Шаге 6 укажите расписание.
  3. На последнем шаге дайте вашей задаче имя и завершите работу мастера создания задач.

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

Замечание: точно так же создаются задачи для копирования данных в другие облачные сервисы: Google Drive, Dropbox, Microsoft OneDrive, Amazon S3, Box и так далее.

Видеоурок о резервном копировании Яндекс Диска

В данном видеоуроке рассмотрена инструкция по резервному копированию на Яндекс Диск, а также по бэкапу данных, хранящихся в данном облаке.

Внимание: Данная видео инструкция основана на предположении, что ПО Handy Backup уже установлено на компьютере. Если это не так, пожалуйста, скачайте и установите Handy Backup перед тем как начать обучение в соответствии с видеоуроком.

Резервное копирование на Яндекс.Диск через WebDAV

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

Handy Backup полностью поддерживает резервное копирование на Яндекс.Диск по протоколу WebDAV.

  • Чтобы воспользоваться WebDAV для доступа к Яндекс.Диску, выберите плагин WebDAV на Шаге 3, пользуясь вышеописанным алгоритмом создания задачи. В диалоговом окне конфигурации WebDAV введите ваши параметры доступа к Яндекс.Диску.

Внимание: при использовании WebDAB бэкап на Яндекс.Диск может оказаться несколько медленнее, чем при прямом доступе. Например, резервное копирование 1С на Яндекс.Диск обычно занимает существенное время при использовании WebDAV.

Автоматический бэкап на Яндекс.Диск с помощью Handy Backup стал ещё проще и быстрее с внедрением нового инструмента, использующего прямой доступ к облачному сервису Яндекс. Попробуйте его самостоятельно, скачав бесплатную 30-дневную пробную версию!

Привет друзья!

Прошло всего 4 года с тех пор, как я писал в блог крайний раз. За это время накопилось большая база знаний и опыта. Было проделано множество интересной работы и завершено множество интересных проектов. О некоторых из них (читай: "не нарушая коммерческой тайны") я постараюсь рассказать в нескольких постах.
Побудило меня вернуться сразу несколько вещей. Во-первых выяснилось, что многие вещи из написанных еще не потеряли актуальности. Во-вторых выясниось, что людям нравилось его читать. Было очень приятно:) Пример: три месяца назад на собеседовании меня спрашивали, почему я забросил свой блог, хвалили. Сказали, если возьмут, то буду для их стенгазеты писать. Не взяли, так что писать для стен.газеты не буду:)

Но это все лирика, передем к делу.
Встала задача настроить бэкап на Яндекс.Диск. Само-собой, скриптов множество, но большинство предлагают простое копирование файла без проверок факта копирования, без отчетов и прочего. В конце концов, один хороший человек сбросил мне ссылку на блог некоего товарища с ником del, который решил данную проблему . Учитывая его прозвище, скрипт я прочел, затем проверил в тесте. Всё отлично работает, все файлы на месте, ничего на сторону не отправляется.
Предупреждаю, что скрипт по сути не архивирует данные. Т.е. сжатие есть, но оно минимально. Если вам требуется нормально сжимать данные, то курим "tar --help" или "man tar" для FreeBSD. Кстати,очень люблю FreeBSD именно за их man`ы. Точнее, за почти перманентную необходимость их читать. Каждый раз при чтении возникает ощущение, что "вот-вот... сейчас появится убийца..", но вновь разочарование. Ни убийцы, ни смысла в жизни.

Теперь сам скрипт. Учтите, что в корневой директории вашего диска будет создана папка Приложения. Ищите все там. Также, скрипт оставляет все комментарии на русском языке, так что у многих могут возникнуть проблемы с кодировкой. Решений, как водится, два. Либо устанавливаем нужную на сервер, либо переписываем всё в транслит. Можете еще перевести на английский. Последнее лучше всего, т.к. кому охота читать цитаты из Некрономикона или рукописное назначение врача.
Также обратите внимание, что вначале скрипта стоит стандартное #!/bin/bash

Учтите, что FreeBSD не умеет работать с bash, так что требуется заменить это строку на #!/bin/sh , иначе не заведется.

Выкладывать бекапы проектов (сайтов) на Яндекс.Диск может понадобиться по нескольким причинам, например, из-за нехватки места на сервере (хостинге, VDS, VPS) или для повышения безопасности хранения бекапов (на случай, если сервер без рейда и он выйдет из строя).

В связи с этим я написал для себя и решил выложить для других небольшой bash-скрипт для бекапа на Яндекс.Диск. Функции скрипта:
- Создание на сервере бекапа проектов (файлов + баз данных MySQL);
- Авторизация на Яндекс.Диске в качестве приложения (по токену, более безопасный способ , чем использование логина и пароля);
- Отправка бекапов с сервера на Яндекс.Диск;
- Удаление старых бекапов с Яндекс.Диска для экономии места (настраивается максимальное количество хранимых бекапов);
- Запись и отправка лога на e-mail (настраивается).

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

1. Логинимся на Яндексе под аккаунтом, на диск которого будем делать бекап, заходим на oauth.yandex.ru и нажимаем «Зарегистрировать новое приложение».

2. Заполняем название приложения (например, «backup») и выдаём нужные права в разделе «Яндекс.Диск REST API», а именно: «Доступ к информации о Диске» и «Доступ к папке приложения на Диске».

Ниже на той же странице под полем «Callback URL» нажимаем «подставить URL для разработки» и нажимаем «Сохранить»:

3. После сохранения параметров приложения нас перенаправят на страницу с данными о приложении:

4. Теперь получим сам токен (если хотите, можете почитать подробнее об этом в мануале Яндекса), для этого копируем ID, подставляем в конец URL https://oauth.yandex.ru/authorize?response_type=token&client_id= , переходим по получившемуся адресу и подтверждаем выдачу разрешений приложению:

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

А теперь сам bash-скрипт для бекапа на Яндекс.Диск:


#!/bin/bash # # Yandex.Disk backup script v1.0 by Sergey Lukonin (neblog.info) # # # # # # # # # # # НАСТРОЙКИ БЕКАПА MYSQL # # # # # # # # # # # Сервер БД MYSQL_SERVER=mysql.some-server.ru # Юзер, под которым будем делать бекап доступных баз, руту mysql обычно доступны все БД, отдельному пользователю обычно доступна БД конкретного проекта MYSQL_USER=some-user # Пароль пользователя базы данных (Пароль от рута сервера и от рута mysql разные не путайте) MYSQL_PASSWORD=some-password # # # # # # # # # # ОБЩИЕ НАСТРОЙКИ # # # # # # # # # # # Директория для временного хранения бекапов, которые удаляются после отправки на Яндекс.Диск BACKUP_DIR="/home/www/backup" # Название проекта, используется в логах и именах архивов PROJECT="neblog.info" # Максимальное количество хранимых на Яндекс.Диске бекапов (0 - хранить все бекапы): MAX_BACKUPS="14" # Дата, используется в именах архивов DATE=`date "+%Y-%m-%d"` # Директории для архивации (указываются через пробел), которые будут помещены в единый архив и отправлены на Яндекс.Диск DIRS="/home/www/projects/neblog" # Yandex.Disk токен (как получить - см. на neblog.info) TOKEN="" # Имя лог-файла, хранится в директории, указанной в $BACKUP_DIR LOGFILE="backup.log" # E-mail для отправки результата выполнения скрипта. Оставьте пустым, если отправлять результаты не требуется. sendLog=" " # Отправлять только ошибки (true). Укажите false, если нужно отправлять логи при любом результате выполнения скрипта. sendLogErrorsOnly="false" # # # # # # # # # # КОНЕЦ НАСТРОЕК # # # # # # # # # # # # # # # # # # # # # ДАЛЬШЕ НИЧЕГО НЕ МЕНЯЕМ! # # # # # # # # # # function mailing() { if [ ! $sendLog = "" ];then if [ "$sendLogErrorsOnly" == true ]; then if echo "$1" | grep -q "error" then echo "$2" | mail -s "$1" $sendLog > /dev/null fi else echo "$2" | mail -s "$1" $sendLog > /dev/null fi fi } function logger() { echo "["`date "+%Y-%m-%d %H:%M:%S"`"] File $BACKUP_DIR: $1" >> $BACKUP_DIR/$LOGFILE } function parseJson() { local output regex="(\"$1\":[\"]?)([^\",\}]+)([\"]?)" [[ $2 =~ $regex ]] && output=${BASH_REMATCH} echo $output } function checkError() { echo $(parseJson "error" "$1") } function getUploadUrl() { json_out=`curl -s -H "Authorization: OAuth $TOKEN" https://cloud-api.yandex.net:443/v1/disk/resources/upload/?path=app:/$backupName&overwrite=true` json_error=$(checkError "$json_out") if [[ $json_error != "" ]]; then logger "$PROJECT - Yandex.Disk error: $json_error" mailing "$PROJECT - Yandex.Disk backup error" "ERROR copy file $FILENAME. Yandex.Disk error: $json_error" echo "" else output=$(parseJson "href" $json_out) echo $output fi } function uploadFile { local json_out local uploadUrl local json_error uploadUrl=$(getUploadUrl) if [[ $uploadUrl != "" ]]; then echo $UploadUrl json_out=`curl -s -T $1 -H "Authorization: OAuth $TOKEN" $uploadUrl` json_error=$(checkError "$json_out") if [[ $json_error != "" ]]; then logger "$PROJECT - Yandex.Disk error: $json_error" mailing "$PROJECT - Yandex.Disk backup error" "ERROR copy file $FILENAME. Yandex.Disk error: $json_error" else logger "$PROJECT - Copying file to Yandex.Disk success" mailing "$PROJECT - Yandex.Disk backup success" "SUCCESS copy file $FILENAME" fi else echo "Some errors occured. Check log file for detail" fi } function backups_list() { # Ищем в директории приложения все файлы бекапов и выводим их названия: curl -s -H "Authorization: OAuth $TOKEN" "https://cloud-api.yandex.net:443/v1/disk/resources?path=app:/&sort=created&limit=100" | tr "{}," "\n" | grep "name[[:graph:]]*.tar.gz" | cut -d: -f 2 | tr -d """ } function backups_count() { local bkps=$(backups_list | wc -l) # Если мы бекапим и файлы, и БД, то на 1 бекап у нас приходится 2 файла. Поэтому количество бекапов = количество файлов / 2: expr $bkps / 2 } function remove_old_backups() { bkps=$(backups_count) old_bkps=$((bkps - MAX_BACKUPS)) if [ "$old_bkps" -gt "0" ];then logger "Удаляем старые бекапы с Яндекс.Диска" # Цикл удаления старых бекапов: # Выполняем удаление первого в списке файла 2*old_bkps раз for i in `eval echo {1..$((old_bkps * 2))}`; do curl -X DELETE -s -H "Authorization: OAuth $TOKEN" "https://cloud-api.yandex.net:443/v1/disk/resources?path=app:/$(backups_list | awk "(NR == 1)")&permanently=true" done fi } logger "--- $PROJECT START BACKUP $DATE ---" logger "Выгружаем дампы баз" mkdir $BACKUP_DIR/$DATE for i in `mysql -h $MYSQL_SERVER -u $MYSQL_USER -p$MYSQL_PASSWORD -e"show databases;" | grep -v information_schema | grep -v Database`; do mysqldump -h $MYSQL_SERVER -u $MYSQL_USER -p$MYSQL_PASSWORD $i > $BACKUP_DIR/$DATE/$i.sql; done logger "Создаем архив mysql $BACKUP_DIR/$DATE-mysql-$PROJECT.tar.gz" tar -czf $BACKUP_DIR/$DATE-mysql-$PROJECT.tar.gz $BACKUP_DIR/$DATE rm -rf $BACKUP_DIR/$DATE logger "Создаем архив каталогов $BACKUP_DIR/$DATE-files-$PROJECT.tar.gz" tar -czf $BACKUP_DIR/$DATE-files-$PROJECT.tar.gz $DIRS FILENAME=$DATE-mysql-$PROJECT.tar.gz logger "Выгружаем на Яндекс.Диск архив mysql $BACKUP_DIR/$DATE-mysql-$PROJECT.tar.gz" backupName=$DATE-mysql-$PROJECT.tar.gz uploadFile $BACKUP_DIR/$DATE-mysql-$PROJECT.tar.gz FILENAME=$DATE-files-$PROJECT.tar.gz logger "Выгружаем на Яндекс.Диск архив с файлами $BACKUP_DIR/$DATE-files-$PROJECT.tar.gz" backupName=$DATE-files-$PROJECT.tar.gz uploadFile $BACKUP_DIR/$DATE-files-$PROJECT.tar.gz logger "Удаляем архивы с диска" find $BACKUP_DIR -type f -name "*.gz" -exec rm "{}" \; # Удаляем старые бекапы с Яндекс.Диска (если MAX_BACKUPS > 0) if [ $MAX_BACKUPS -gt 0 ];then remove_old_backups; fi logger "Завершение скрипта бекапа"

Также вы можете скачать готовый файл скрипта. Скрипт следует расположить на сервере, заменить в нём параметры на свои, дать права на запуск (chmod +x) и поставить на ежедневное выполнение в cron. Если вы планируете выполнять несколько таких заданий, задайте время между их запуском (5-10 минут).



Понравилась статья? Поделитесь с друзьями!
Была ли эта статья полезной?
Да
Нет
Спасибо, за Ваш отзыв!
Что-то пошло не так и Ваш голос не был учтен.
Спасибо. Ваше сообщение отправлено
Нашли в тексте ошибку?
Выделите её, нажмите Ctrl + Enter и мы всё исправим!