Cobian Backup — бесплатная программа для резервного копирования данных по расписанию.

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

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

Те файлы которые вам не нужны сейчас, наверняка могут вам понадобиться завтра или через 5 лет. А где эти файлы? — Да на старом компьютере/флэшке/отформатированном съемном носителе…

А должно всё это храниться в резервных копиях. В зашифрованном виде (по обстоятельствам), на резервируемом носителе.

Как это сделать если у вас небольшая фирма или личный ПК, а денежных средств ограниченное количество?

1#. Резервное копирование данных на каждом отдельно стоящем компьютере:

На рабочих станциях пользователей должно быть настроено теневое резервное копирование штатными средствами windows. (В windows 7 делается через свойства значка компьютер > Дополнительные параметры системы > Защита системы ). Можно включить как бэкап реестра при изменениях (контрольные точки), так и сохранение состояний файлов на локальных дисках. Придется пожертвовать свободным местом на HDD, но нервы дороже.

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

Если штатное резервное копирование не может быть использовано по какой либо из причин, можно воспользоваться сторонним софтом таким как acronis backup and recovery (платный) или (бесплатный). Программ на эту тему — масса .

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

Скажем так — резервное копирование системы штатными средствами: «must have». Но важные вещи постарайтесь дублировать в сеть. Для это можно:

а) Воспользоваться хостингом VDS (самый дешевый тариф с 5ГБ пространства 100 р. в месяц)

б) Использовать бесплатное место на облачных сервисах (google drive, icloud, yandex disk и т.д.). Например гугл диск поддерживает восстановление предыдущих версий файлов. И даже если непреднамеренно измененный файл уже синхронизирован — его всегда можно восстановить. Можете прочесть полезные советы по google drive .

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

2#. Резервное копирование данных на фирме с несколькими (и более 10) рабочими станциями.

Идеальным вариантом для резервного копирования на предприятии будет наличие централизованного сервера внутри компании (FTP сервер с RAID 1) или за её пределами (VDS сервер со службой FTP).

Хранить, скажем, базу данных 1С или договора на Google-диске не совсем безопасно, т.к. потеряв доступ к почте или если доступ оказался в руках злоумышленников фирма определенно пострадает. Хотя у автора есть знакомые индивидуальные предприниматели которые только так и работают. У последних на гугл-диск всё помещается в зашифрованном виде;)

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

б) В случае с внешним хранилищем на VDS, вы платите 1 раз за настройку администратором по ИТ-аутсорсингу (в районе 5 тыс. руб, в зависимости от количества компьютеров для бэкапа) и ежемесячно 500-900 рублей (в зависимости от объемов информации) за хостинг VDS. Учтите, что в этом случае нужен интернет пошустрее. Хотя бы 5 Мбит/с исходящей скорости.

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

Ниже схематично представлены варианты резервного копирования для совсем небольшого предприятия 5-30 компьютеров.

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

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

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

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

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

Программное обеспечение как вариант можно использовать Areca (кроссплатформенное java-приложение) + планировщик задач Windows. В Areca создается скрипт с параметрами резервного копирования (куда копировать, шифрование, вид и имена копий) который добавляется в планировщик задач windows или cron Unix. Можете ознакомиться со статьей по .

Как кажется автору, вариант б) более предпочтителен, ведь у компании почти пропадает головная боль относительно сохранности резервных данных. Но здесь тоже есть пара минусов: — если вы используете VDS для бэкапа, то этот сервер уже ни с чем не совместить. Можно конечно туда поместить и ваши приложения (1с), но тогда помимо дискового пространства вам придется платить еще и за дополнительное процессорное время и память (а это уже другие суммы).

Еще один очевидный минус — это . И при отсутствии вменяемого провайдера поблизости вам остается только вариант а).

Итак второй вариант с VDS(б):

Данные идут в том же направлении как и на первой схеме (на рисунке не показаны), однако теперь все отправляется через интернет на удаленный VDS-сервер. Areca отлично шифрует данные еще на стороне пользователя и они в таком виде помещаются на VDS по протоколу FTP. В качестве FTP-сервера на VDS Можно довольно быстро поднять vsftpd , пример его настройки есть .

Стоит учесть один нюанс: «Копирование файлов по протоколу ftp с SSL или TLS — значительно замедляет процесс, а при больших объемах данных может и зависнуть вовсе».

Нужно лишь продумать политику резервного копирования, а именно: «Собирать все важные данные сначала внутри сети на какм-либо сетевом хранилище (общая папка например) и потом под одной учетной записью FTP сбрасывать их на VDS в назначенное время. Или сбрасывать данные со всех компьютеров в разное время под разными учетными записями». Первый вариант будет лучше если компьютеров больше 5. Если же сеть небольшая то и отдельное сетевое хранилище выделять не нужно.

Как делать бэкапы — решать вам, здесь были представлены наиболее бюджетные варианты резервного копирования.

Пользователи прочитавшие эту запись обычно читают:

Вконтакте

Добрый день уважаемые читатели блога, я вам уже много раз показывал, как ремонтируется и восстанавливается операционная система Windows, но почти все эти статьи были про клиентские версии, сегодня я хочу исправиться и наконец осветить вопрос, как производится резервное копирование windows server систем, так как выход из стоя сервера, чревато для бизнеса денежными потерями, в отличии от простоя обычного офисного компьютера. Я вам расскажу свои примеры из жизни, в которых мне бы очень помогла архивация windows server 2012 r2.

Архивация windows server 2012 r2

Как вы уже наверно догадались, резервное копирование windows server систем, осуществляется с помощью встроенного компонента система архивации данных windows server 2012 r2. Хочу сразу отметить, что она есть и в 2008 R2, но я буду рассказывать на примере более современной версии, хотя все изложенное подойдет и для предыдущей версии. Если вы еще застали времена Windows Server 2003, то наверняка знакомы с компонентом NTBackup, именно им все делали бэкап системы, и она даже умела писать на ленты. Затем пришел на смену 2008, без R2 и показал убогий и переработанный компонент архивация windows, у которого убрали кучу функционала, до сих пор мне не понятна логика людей, выпустивших тогда этот компонент в таком виде. Прошел год и вышел R2, который уже вернул большую часть функций, которые были в NTBackup и сделал резервное копирование windows server, очень простым и удобным.

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

Расскажу пример из жизни, как и у всех администраторов большая часть серверного парка уже давно это виртуальные машины , хотя есть небольшая часть серверов, которая не виртуализована, просто потому, что не рационально и не даст выхлопа, я говорю про сервера с 300 гб оперативной памяти и MS SQL сервером. В один прекрасный день был сбой по электричеству и UPS все не выдержал. В итоге сервера выключились, не совсем правильно. Восстанавливая сервисы один из серверов не загружался и у него была ошибка an error occurred while attempting при загрузке Windows. Ее получилось победить, но через 5-6 часов, что согласитесь не очень быстро, а вот если бы была резервная копия системы и средство восстановления, то все прошло бы за пару минут.

По возможности всегда бэкапте ОС у физических серверов, потом сэкономите кучу времени и сил

Если вы зайдете в Свойства системы, то вкладку Защита системы, вы не найдете на Windows Server 2012 R2.

Почему именно система архивации данных windows server 2012 r2

Я прекрасно понимаю, что существует некое количество других программных продуктов по резервному копирования серверных ОС, например от:

  • Veeam
  • Acronis

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

Куда можно делать резервную копию

Система архивации данных windows server может создавать резервные копии на такие хранилища:

  • В идеале для системы должен быть отдельный диск, который размечает система архивации и скрывает от пользователя, для дальнейшего создания точек восстановления. Сама Microsoft рекомендует именно этот вариант. Кстати, если кто-то знаком с Microsoft System Center Data Protection Manager, то там так и работала система резервного копирования.
  • Можно использовать уже размеченные разделы
  • Сетевые папки
  • ISCSI диски

Система архивации данных windows server 2012 R2 умеет создавать полную копию и дифференциальную (добавочную), сама управляет сроком хранения. У нее принцип работы очень простой, она будет записывать и хранить столько копий, сколько ей позволяет дисковое пространство, затем будет циклическое перезаписывание, более нового на более старое, очень похоже на видео наблюдение.

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

Давайте немного поговорим про сам механизм работы системы архивации windows server, тут нового ничего нету, она использует службу теневого копирования тома (VSS), ее задачей является дать средству архивирования работать с открытыми и системными файлами, и не просто работать, а еще и не мешать системе работать, служба просто делает некий слепок состояния, это очень похоже на у виртуальных машин. На движке Windows Server 2012 R2, вы можете таким образом архивировать виртуальные машины на Hyper-V 3.0, не прекращая их работы.

Возможности VSS так же распространяются и на базы данных, могу со сто процентной уверенностью сказать, что проблем с Exchange или MS SQL у вас не возникнет, а вот PostgreSQL может создать определенные трудности. Если мы говорим про MS SQL, то она прекрасно понимает службу VSS и переводит БД перед моментом создания теневой копии к непротиворечивому состоянию, сама VSS не думает даже проверять логическую целостность данных, ей это не нужно, так как ее задача - это сделать снимок. Если, например, таким образом сделать резервную копию PostgreSQL, то при восстановлении мы получим срез базы на определенное состояние времени в противоречивом состоянии и в ней не будет всех незавершенных транзакций на момент создания бэкапа. Так, что есть некая такая проприетарность к своим продуктам.

Куда лучше копировать

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

Установка системы архивации windows server

Давайте смотреть как устанавливается система архивации данных windows server 2012 r2, еще начиная с 2008 это компонент системы и логично, что его нужно искать в диспетчере сервера. Выбираем пункт Управление > Добавить роли и компоненты

оставляем пункт установка ролей и компонентов

Выбираем пункт Система архивации Windows Server

и жмем установить.

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

Настройка системы архивации windows server

После установки компонента архивации, его нужно настроить, давайте приступать. Открываем диспетчер сервера > Средства и находим пункт система архивации данных Windows Server.

Так же данную оснастку можно вызвать, нажав WIN+R и введя wbadmin.msc, полный смотрите по ссылке. Открыв оснастку, вы сразу увидите, что вам настоятельно рекомендуют настроить первое расписание. Сделать это можно через меню действий:

  1. Расписание архивации
  2. Однократная архивация
  3. Восстановление

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

в окне объекты архивации, система архивации данных windows server попросит вас добавить элементы с помощью соответствующей кнопки.

Среди элементов у вас будет:

  • Восстановление исходного состояния системы
  • Состояние системы
  • Локальные диски
  • Роль Hyper-V, если установлена.

В итоге объекты для архивации будут добавлены в список, хочу отметить, что если нажать кнопку Дополнительные параметры, то можно задать параметры VSS:

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

Для примера если вы используете Exchange или MS SQL, то выберите пункт копировать архив VSS для нормального взаимодействия со службой теневого копирования.

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

Теперь, чтобы осуществить резервное копирование windows server, нужно задать расписание, тут либо раз в день, либо чаще, задаем на свое усмотрение.

  • Архивация на жесткий диск для архивов > тут полностью отдается физический HDD, форматируется и скрывается от пользователя, такая защита от дурака, чтобы шаловливые ручки все не попортили.
  • Архивация на том > то же очень распространено, берете существующий том (он может быть частью RAID или же другой физический диск) и льете туда, под это же дело попадает и ISCSI диск, который в системе видится как локальный.
  • Ну и общая шара, очень удобно, все находится вне физического сервера.

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

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

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

Если выбрать Архивация на том, то вам нужно указать том назначения, на который будет выполнено резервное копирование windows server.

Смотрим сводную информацию и подтверждаем расписание.

Видим, что система архивации windows server успешно создала расписание.

Восстановление Windows Server 2012 R2

После того, как у вас появилась резервная копия, давайте рассмотрим ситуацию при которой вам нужно будет произвести процедуру восстановления Windows Server 2012 R2. Во первых вы можете посмотреть детали резервного копирования Windows Server (размер, дату)

Как восстановить отдельный файл или папку

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

Пот пример моего виртуального диска, кликнув по нему правым кликом, вы можете нажать Подключить.

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

Тут все просто идем в оснастку Управление дисками, через правый клик мыши по кнопке пуск.

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

Назначаем нужную букву, у меня это буква Е.

Все открываем мой компьютер и видим, новый локальный диск.

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

Восстановление в случае поломки операционной системы

Никто не застрахован от такого, я много раз встречал в своей практике, что система Windows Server выходила из строя, и для ее восстановления без наличия бэкапа, уходило куда больше времени, чем просто переустановка системы и дальнейшая перенастройка, примером может быть служить ошибка an error occurred while attempting to read the boot configuration data. Поэтому пару раз, когда вы обожжетесь, вы поймете, что система архивации данных windows server 2012 r2 шикарная вещь, позволяющая в считанные минуты сделать резервное копирование windows server и в нужный момент восстановиться из него.

Заходим в систему архивации windows server и в правом углу выбираем пункт Восстановление. У вас на выбор будет два пункта:

  1. Этот сервер > имеется ввиду, что бэкап лежит локально
  2. Архив находится в другом расположении.

Для начала давайте выберем второй пункт "Архив находится в другом расположении"

Тут два варианта, либо вы подсовываете cd-rom или внешний диск, либо указываете UNC путь в формате \\папка

Главное, чтобы у системы были права на ее чтение.

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

  • Файлы и папки
  • Hyper-V
  • Приложения
  • Состояние системы

Выбрав первый вариант "Файлы и папки" вы можете восстановить отдельные файлы или папки из бэкапа.

Если выбрать Hyper-V, то вам предложат:

  • Восстановить в исходное расположение > по сути это перезапись
  • Восстановить в другое расположение
  • Скопировать в папку

Пункт приложения, немного специфичный, так как он работает не для всех приложений, а для тех, кто умеет работать с API службы архивации и поддерживать VSS. Ну и восстановление системы:

  • Исходное размещение > будет откат на то состояние, которое было в момент резервного копирования Windows Server
  • Другое размещение > по сути создастся папка с набором файлов.

Жмем восстановить

Будет подсчитано, сколько файлов подлежат восстановлению и начнется сам процесс.

После перезагрузки вы увидите сообщение:

Операция восстановления состояния системы, начатая в 08.02.2017, успешно завершена

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

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

Виды бэкапов баз данных

Для начала разберемся с тем, какие вообще бывают бэкапы. Сервер баз данных не является обычным десктопным приложением, и, чтобы обеспечить выполнение всех свойств ACID (Atomic, Consistency, Isolated, Durable), используется ряд технологий, а поэтому создание и восстановление БД из архива имеет свои особенности. Существуют три различных подхода к резервному копированию данных, каждый из которых имеет свои плюсы и минусы.

При логическом, или SQL, бэкапе (pg_dump, mysqldump, SQLCMD) создается мгновенный снимок содержимого базы с учетом транзакционной целостности и сохраняется в виде файла с SQL-командами (можно выбрать всю базу или отдельные таблицы), при помощи которого можно воссоздать базу данных на другом сервере. На это требуется время (особенно для больших баз) для сохранения и восстановления, поэтому очень часто эту операцию выполнять нельзя и ее производят во время минимальной нагрузки (например, ночью). При восстановлении администратору необходимо будет выполнить несколько команд, чтобы подготовить все необходимое (создать пустую базу данных, учетные записи и прочее).

Физический бэкап (уровня файловой системы) - копирование файлов, которые СУБД использует для хранения данных в базе данных. Но при простом копировании игнорируются блокировки и транзакции, которые, скорее всего, будут неправильно сохранены и нарушены. При попытке присоединить этот файл он будет в несогласованном состоянии и приведет к ошибкам. Чтобы получить актуальный бэкап, базу данных нужно остановить (можно уменьшить время простоя, использовав два раза rsync - вначале на работающей, потом на остановленной). Недостаток этого метода очевиден - нельзя восстановить определенные данные, только всю базу данных. При старте БД, восстановленной из архива файловой системы, нужно будет провести проверку на целостность. Здесь используются разные вспомогательные технологии. Например, в PostgreSQL логи упреждающей журнализации WAL (Write Ahead Logs) и специальная функция (Point in Time Recovery - PITR), позволяющая вернуться к определенному состоянию базы. С их помощью легко реализуется третий сценарий, когда бэкап уровня файловой системы объединяется с резервной копией WAL-файлов. Вначале восстанавливаем файлы резервной копии файловой системы, а затем при помощи WAL база приводится к актуальному состоянию. Это чуть более сложный подход для администрирования, но зато нет проблем с целостностью БД и восстановлением баз до определенного времени.

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

Barman

Лицензия: GNU GPL

Поддерживаемые СУБД: PostgreSQL

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

Barman (backup and recovery manager) - внутренняя разработка компании 2ndQuadrant, предоставляющей услуги на базе PostgreSQL. Предназначен для физического бэкапа PostgreSQL (логический не поддерживает), архивирования WAL и быстрого восстановления после сбоев. Поддерживаются удаленный бэкап и восстановление нескольких серверов, функции point-in-time-recovery (PITR), управление WAL. Для копирования и подачи команд на удаленный узел используется SSH, синхронизация и бэкап при помощи rsync позволяет сократить трафик. Также Barman интегрируется со стандартными утилитами bzip2, gzip, tar и подобными. В принципе, можно использовать любую программу сжатия и архивирования, интеграция не займет много времени. Реализованы различные сервисные и диагностические функции, позволяющие контролировать состояние сервисов и регулировать полосу пропускания. Поддерживаются Pre/Post-скрипты.

Barman написан на Python, управление политиками резервного копирования производится при помощи понятного INI-файла barman.conf, который может находиться в /etc или домашнем каталоге пользователя. В поставке идет готовый шаблон с подробными комментариями внутри. Работает только на *nix-системах. Для установки в RHEL, CentOS и Scientific Linux следует подключить EPEL - репозиторий, в котором содержатся дополнительные пакеты. В распоряжении пользователей Debian/Ubuntu официальный репозиторий:

$ sudo apt-get install barman

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

Sypex Dumper

Лицензия: BSD

Поддерживаемые СУБД: MySQL

Вместе с MySQL поставляются утилиты mysqldump, mysqlhotcopy, позволяющие легко создать дамп базы данных, они хорошо документированы, и в интернете можно найти большое количество готовых примеров и фронтендов. Последние позволяют новичку быстро приступить к работе. Sypex Dumper представляет собой PHP-скрипт, позволяющий легко создать и восстановить копию базы данных MySQL. Создавался для работы с большими базами данных, работает очень быстро, понятен и удобен в использовании. Умеет работать с объектами MySQL - представлениями, процедурами, функциями, триггерами и событиями.

Еще один плюс, в отличие от других инструментов, при экспорте производящих перекодирование в UTF-8, - в Dumper экспорт производится в родной кодировке. Результирующий файл занимает меньше места, а сам процесс происходит быстрее. В одном дампе могут быть объекты с разными кодировками. Причем легко импорт/экспорт произвести в несколько этапов, останавливая процесс во время нагрузки. При возобновлении процедура начнется с места остановки. При восстановлении поддерживается четыре варианта:

  • CREATE + INSERT - стандартный режим восстановления;
  • TRUNCATE + INSERT - меньше времени на создание таблиц;
  • REPLACE - восстанавливаем в рабочей базе старые данные, не затирая новые;
  • INSERT IGNORE - добавляем в базу удаленные или новые данные, не трогая существующие.

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


Управление производится при помощи веб-браузера, интерфейс с использование AJAX локализован из коробки и создает впечатление работы с настольным приложением. Также возможно запускать задания из консоли и по расписанию (через cron).

Для работы Dumper понадобится классический L|WAMP-сервер, установка обычная для всех приложений, написанных на PHP (копируем файлы и устанавливаем права), и не будет сложной даже для новичка. Проект предоставляет подробную документацию и видеоуроки, демонстрирующие работу с Sypex Dumper.

Есть две редакции: Sypex Dumper (бесплатно) и Pro (10 долларов). Вторая имеет больше возможностей, все отличия приведены на сайте.

SQL Backup And FTP

Лицензия:

Поддерживаемые СУБД: MS SQL Server

MS SQL Server - одно из популярных решений, а потому встречается достаточно часто. Задание резервного копирования создается при помощи среды SQL Server Management Studio, собственно Transact-SQL и командлетов модуля SQL PowerShell (Backup-SqlDatabase). На сайте MS можно найти просто огромное количество документации, которая позволяет разобраться с процессом. Документация хотя и полная, но очень специфическая, а информация в интернете часто противоречит друг другу. Новичку действительно вначале потребуется потренироваться, «набив руку», поэтому, даже несмотря на все сказанное, сторонним разработчикам есть где развернуться. К тому же бесплатная версия SQL Server Express не может похвастаться встроенными инструментами для резервного копирования. Для более ранних версий MS SQL (до 2008) можно найти бесплатные утилиты, например SQL Server backup , но в большинстве подобные проекты уже коммерциализировались, хотя и предлагают всю функциональность часто за символическую сумму.


Например, разработка SQL Backup And FTP и One-Click SQL Restore соответствует принципу «настроил и забыл». Обладая очень простым и понятным интерфейсом, они позволяют создавать копии баз данных MS SQL Server (включая Express) и Azure, сохранять зашифрованные и сжатые файлы на FTP и облачных сервисах (Dropbox, Box, Google Drive, MS SkyDrive или Amazon S3), результат можно тут же просмотреть. Возможен запуск процесса как вручную, так и по расписанию, отправка сообщения о результате задания по email, запуск пользовательских скриптов.

Поддерживаются все варианты бэкапа: полный, дифференциальный, журнал транзакций, копирование папки с файлами и многое другое. Старые резервные копии удаляются автоматически. Для подключения к виртуальному узлу используется SQL Management Studio, хотя здесь могут быть нюансы и это будет работать не во всех таких конфигурациях. Для загрузки предлагается пять версий - от бесплатной Free до навороченной Prof Lifetime (на момент написания этих строк стоила всего 149 долларов). Функционала Free вполне достаточно для небольших сетей, в которых установлено один-два SQL-сервера, все основные функции активны. Ограничено количество резервных БД, возможность отправки файлов на Google Drive и SkyDrive и шифрование файлов. Интерфейс хотя и не локализован, но очень прост и понятен даже новичку. Нужно лишь подключиться к SQL-серверу, после чего будет выведен список баз данных, следует отметить нужные, настроить доступ к удаленным ресурсам и указать время выполнения задания. И все это в одном окне.

Но есть одно «но». Сама программа не предназначена для восстановления архивов. Для этого предлагается отдельная бесплатная утилита One-Click SQL Restore, понимающая и формат, созданный командой BACKUP DATABASE. Админу необходимо лишь указать архив и сервер, на который восстановить данные, и нажать одну кнопку. Но в более сложных сценариях придется использовать RESTORE.


Особенности бэкапа MS SQL Server

Создание резервной копии и восстановление СУБД имеет свои отличия, которые нужно учитывать, особенно их много при переносе архива на другой сервер. Для примера разберем некоторые нюансы MS SQL Server. Для архивирования при помощи Transact-SQL следует использовать команду BACKUP DATABASE (есть и разностная DIFFERENTIAL) и журнал транзакций BACKUP LOG.

Если резервная копия разворачивается на другом сервере, нужно убедиться, что присутствуют те же самые логические диски. Как вариант - можно вручную прописать правильные пути для файлов базы данных, используя опцию WITH MOVE команды RESTORE DATABASE.

Простая ситуация - бэкап и перенос баз на другие версии SQL Server. Эта операция поддерживается, но в случае SQL Server будет работать, если версия сервера, на которой разворачивается копия, такая же или новее, чем та, на которой она создавалась. Причем есть ограничение: новее не более чем на две версии. После восстановления БД будет находиться в режиме совместимости с той версией, с которой осуществлялся переход, то есть новые функции будут недоступны. Это легко поправить, изменив COMPATIBILITY_LEVEL. Можно это сделать при помощи GUI или SQL.

ALTER DATABASE MyDB SET COMPATIBILITY_LEVEL = 110;

Определить, на какой версии была создана копия, можно, просмотрев заголовок файла архива. Чтобы не экспериментировать, при переходе на новую версию SQL Server следует запустить бесплатную утилиту Microsoft Upgrade Advisor.

Iperius

Лицензия: коммерческая, есть версия Free

Поддерживаемые СУБД: Oracle 9–11, XE, MySQL, MariaDB, PostgreSQL и MS SQL Server

Когда приходится управлять несколькими типами СУБД, без комбайнов не обойтись. Выбор большой. Например, Iperius - легкая, очень простая в использовании и одновременная мощная программа для резервного копирования файлов, имеющая функцию горячего резервирования баз данных без прерывания в работе или блокирования. Обеспечивает полный или инкрементальный бэкап. Может создавать полные образы дисков для автоматической переустановки всей системы. Поддерживает резервное копирование на NAS, USB-устройства, стример, FTP/FTPS, Google Drive, Dropbox и SkyDrive. Поддерживает сжатие zip без ограничения в размере файлов и AES256-шифрование, запуск внешних скриптов и программ. Включает весьма функциональный планировщик заданий, возможно параллельное или последовательное выполнение нескольких заданий, результат отправляется на email. Поддерживаются многочисленные фильтры, переменные для персонализации путей и настроек.

Возможность закачки по FTP позволяет легко обновлять информацию на нескольких веб-сайтах. Открытые файлы резервируются при помощи технологии VSS (теневого копирования томов), что позволяет производить горячий бэкап не только файлов СУБД, но и других приложений. Для Oracle также задействуется средство организации резервного копирования и восстановления данных RMAN (Recovery Manager). Чтобы не перегружать канал, есть возможность настройки полосы пропускания. Управление резервированием и восстановлением производится при помощи локальной и веб-консоли. Все функции на виду, поэтому для настройки задания потребуется лишь понимание процесса, в документацию заглядывать даже не придется. Просто следуем подсказкам мастера. Также можно отметить менеджер учетных записей, что очень удобно при большом количестве систем.

Базовые функции предлагаются бесплатно, но возможность резервирования БД заложена только в версиях Advanced DB и Full. Поддерживается установка от XP до Windows Server 2012.

Handy Backup

Лицензия: коммерческая

Поддерживаемые СУБД: Oracle, MySQL, IBM DB2 (7–9.5) и MS SQL Server

Одна из самых мощных систем управления реляционными базами данных - IBM DB2, имеющая уникальные функции по масштабированию и поддерживающая множество платформ. Поставляется в нескольких редакциях, которые построены на одной базе и отличаются функционально. Архитектура баз данных DB2 позволяет управлять практически всеми типами данных: документами, XML, медиафайлами и так далее. Особо популярна бесплатная DB2 Express-C. Бэкап очень прост:

Db2 backup db sample

Или снапшот, использующий функцию Advanced Copy Services (ACS):

Db2 backup db sample use snapshot

Но нужно помнить, что в случае снимков мы не можем восстанавливать (db2 recover db) отдельные таблицы. Есть и возможности по автоматическому бэкапу, и многое другое. Продукты хорошо документированы, хотя в русскоязычном интернете руководства встречаются редко. Также далеко не во всех специальных решениях можно найти поддержку DB2.

Например, Handy Backup позволяет выполнять бэкап нескольких типов серверов баз данных и сохранять файлы практически на любой носитель (жесткий диск, CD/DVD, облачное и сетевое хранилище, FTP/S, WebDAV и другие). Возможен бэкап баз данных через ODBC (только таблицы). Это одно из немногих решений, поддерживающих DB2, и к тому же имеет логотип «Ready for IBM DB2 Data Server Software». Вся процедура выполняется при помощи обычного мастера, в котором необходимо лишь выбрать нужный пункт и сформировать задачу. Сам процесс настройки настолько прост, что разобраться сможет и новичок. Можно создать несколько заданий, которые будут запускаться по расписанию. Результат фиксируется в журнале и отправляется по email. Во время работы задания остановка сервиса не требуется. Архив автоматически сжимается и шифруется, что гарантирует его безопасность.

Работу с DB2 поддерживают две версии Handy Backup - Office Expert (локальный) и Server Network (сетевой). Работает на компьютерах под управлением Win8/7/Vista/XP или 2012/2008/2003. Сам процесс развертывания несложен для любого админа.

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

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

Архитектура резервного копирования сервера и рабочих станций

Для того, чтобы подготовить сетевое резервирование с помощью Handy Backup Server Network, системный администратор должен определить компьютер, который будет выступать в качестве Сервера резервного копирования, обычно это компьютер самого системного администратора. Он служит для управления всеми бэкап-задачами и для записи сделанных копий на внешние носители информации.

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

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

Кроме копирования файлов, программой предусмотрено резервное копирование физических серверов, бэкап виртуальных машин Hyper-V , VMware Workstation и других, резервное копирование Exchange Server , MSSQL, MySQL/MariaDB, PostgreSQL, Oracle, Lotus Notes на серверах и рабочих станциях, а также бэкап любых ODBC-совместимых баз данных на сервере.

Сетевой Агент Handy Backup (Network Agent) устанавливается на каждый пользовательский компьютер, данные которого необходимо копировать. Клиент работает как служба Windows, не имеет графического интерфейса, и позволяет программе собирать данные для резервного копирования с серверов и рабочих станций пользователей.

Как работает сетевое резервное копирование

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

Кроме резервирования информации сетевых компьютеров - файлов и папок, образов дисков, можно производить бэкап баз данных (1С, MySQL, Oracle и др.), данных MS Exchange и Lotus Notes, хранящихся на самом сервере. Также программа позволяет выполнять резервное копирование VMware , Hyper-V и других виртуальных машин.

Handy Backup Server Network состоит из Панели Управления и Агентов:

* Включает в себя Панель Управления и один Сетевой Агент для бэкапа сервера (устонавливается на том же компьютере, где и Панель Управления).


Сервер и Сетвые Агенты Handy Backup работают под ОС Windows 10/8/7/Vista или 2016/2012/2008 Server .

Отзыв пользователя о Handy Backup

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

В.И.Крыш, Ведущий программист ООО КБ "Пласт-М"

Алексей Бережной

Организуем систему резервного копирования
для малого и среднего офиса

Наверное, нет необходимости говорить о важности резервного копирования. И не только для крупных организаций. Бизнес-информация любой, даже самой небольшой, компании нуждается в хорошей и своевременно сделанной резервной копии. Но далеко не каждая компания может позволить себе мощное и дорогостоящее решение на базе дорогих ленточных библиотек и известных программных продуктов, таких как Symantec Backup Exec. В то же время копировать (а иногда и восстанавливать данные) необходимо. Из создавшейся ситуации сам собой напрашивается несложный выход – создать некую систему резервного копирования на базе бесплатных программных продуктов на базе Linux. Как обычно бывает в небольших компаниях, сдать законченную систему нужно было еще вчера, поэтому основной акцент сделаем на простоте реализации, а также на возможности делегирования операций резервного копирования другому лицу, не обладающему навыками опытного администратора UNIX-систем.

Что угрожает нашим данным

Бессмысленно пытаться создавать систему резервирования и восстановления данных без четкого понимая причин, которые могут привести к потере данных. Факторы эти могут быть как внешнего, так и внутреннего характера.

Внутренние факторы

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

Внешние факторы

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

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

Способы организации резервного копирования

Существует несколько способов организации резервного копирования.

Установка внутреннего Backup-сервера

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

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

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

Копирование данных на сменный носитель

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

Преимущества: защищает как от внутренних, так и от большинства внешних факторов.

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

Копирование данных off-site посредством сетевых соединений

Этот метод заключается в копировании файлов по сети за пределы территории предприятия. При этом может использоваться как прямое подключение, так и защищенные интернет-соединения (VPN).

Преимущества: не требует физической транспортировки носителя.

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

Подведем итоги

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

Создание плана резервного копирования

Рассмотрим типы резервного копирования.

Полное копирование (Full backup)

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

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

Недостатки: требует носителей данных большей емкости и более продолжительного времени выполнения.

Дифференциальное копирование (Differential backup)

Копируются только изменения с момента выполнения последнего Full backup. Данные копируются «нарастающим итогом», так что последняя копия будет содержать все изменения с момента последнего Full backup.

Достоинства: выполняется несколько быстрее, нежели Full backup. Повреждение одной из копий не приводит к потере всех данных за период (при наличии действительной копии Full backup).

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

Инкрементное копирование (Incremental backup)

Выполняется копирование только информации, измененной после выполнения предыдущего Incremental backup.

Достоинства: самый быстрый метод резервного копирования. Занимает меньше всего объема.

Недостатки: самый ненадежный метод резервного копирования. В случае повреждения одной из копий все последующие копии становятся бесполезными. В случае повреждения носителя с Full backup становится бесполезен. Необходимо осуществлять off-site всех копий Incremental backup за период. Восстановление данных занимает продолжительное время.

Подведем итоги

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

Если бюджет минимален или данные не представляют большой ценности, то можно использовать Incremental backup.

Differential backup представляет собой некий компромисс, зачастую не всегда оправданный, так как может оказаться, что последняя копия требует объема дискового носителя ивремени создания почти столько же, сколько и Full backup.

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

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

В качестве метода резервного копирования используем сочетание Backup-сервера и накопителя на съемных носителях (например, ленточного накопителя).

План резервного копирования представляет собой ежедневный Full backup предварительно на Backup-сервер с последующей выгрузкой на ленту и транспортировкой вбезопасное место (off-site) ленточного носителя данных (картриджа). В подобных системах Backup-сервер также называют кэш-сервером, стремясь подчеркнуть его промежуточное значение перед окончательным копирование на ленту (см. рис. 1).

Планирование процесса восстановления

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

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

Например, таким решением являются ленточные накопители (стримеры), поддерживающие стандарт LTO (Linear Tape Open), разработанный такими известными участниками компьютерного рынка, как IBM, HP и Seagate.

Примем за основу следующую схему восстановления:

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

Централизованный или децентрализованный метод?

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

В первом варианте за весь процесс резервного копирования отвечает единый программный комплекс, работающий по технологии «клиент-сервер». То есть имеется центральный сервер с установленным специализированным серверным ПО и программы-клиенты резервного копирования на компьютерах. Информация, подлежащая резервному копированию, собирается посредством этих самых клиентов. По такой схеме работает большинство известных коммерческих backup-систем, таких как Symantec Backup Exec. Также существуют бесплатные системы резервного копирования, в основном на базе Open Source, например Bacula, которые также работают по «клиент-серверной» технологии.

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

В нашем случае выбран децентрализованный метод резервного копирования. Данные с Windows-серверов, которых в нашей сети явное большинство, будут копироваться посредством программы ntbackup на сетевой ресурс кэш-сервера, с серверов на базе UNIX-систем – посредством программы tar. Причина довольно банальная: необходимо вкратчайшие сроки создать работающую backup-систему и делегировать полномочия по выполнению рутинных операций резервного копирования другому лицу. То есть система должна быть максимально простой и понятной, при этом не требующей изучения сложного программного комплекса, такого как Backup Exec или Bacula. Кроме того, не потребуется инсталляция программ-клиентов, так как и ntbackup и tar уже присутствуют в соответствующих операционных системах.

Выбор программного обеспечения для организации сервера резервного копирования

В качестве операционной системы был выбран Linux CentOS за его совместимость с широко известной операционной системой Linux Red Hat Enterprise (RHEL), поддержку rpm пакетов и простоту установки и обслуживания. Когда подготавливалось данное решение по резервному копированию, была доступна версия Linux CentOS 5.2, сейчас уже вышла версия 5.3 (http://www.centos.org).

Для облегчения задач по управлению и удаленному администрированию, а также для дальнейшего делегирования полномочий другим сотрудникам (например, администратору Windows-систем) будем использовать протокол RDP. Для этого установим программу xrdp для поддержки терминального доступа посредством RDP-клиента. Для работы xrdp нужен поднятый VNC-сервер, поэтому мы должны установить и его.

Примечание: программа xrdp в некоторых реализациях не всегда корректно работает с тем или иным RDP-клиентом. Например, в случае с xrdp-0.4.0-1.el5.rf для CentOS неподдерживается работа с последней версией RDP-клиента, поставляемого с Service Pack 3 для Windows XP. В подобных случаях рекомендуется пользоваться программой rdesktop, http://www.rdesktop.org (в частности, ее Windows-версией rdesktop.exe, скачать которую можно по адресу: http://www.atomice.com/blog/?page_id=9).

Для облегчения работы с файлами имеет смысл установить Midnight Commander – файловый менеджер, аналог небезызвестного Norton Commander.

Ну и наконец, необходимо установить программное обеспечение для поддержки работы с ленточным накопителем: HP Data Protector Express Single Server Edition, страница проекта: http://h18000.www1.hp.com/products/storage/software/datapexp/sse/index.html .

Выбор оборудования для кэш-сервера

В качестве кэш-сервера был выбран старенький сервер SuperMicro в корпусе big tower.

Аппаратное обеспечение сервера:

  • Материнская плата: Super X6DHE-XG2.
  • Объем ОЗУ: 1 Гб.
  • Дисковые контроллеры:
    • встроенный в материнскую плату контроллер Adaptec Embedded Host Raid;
    • дополнительный RAID-контроллер LSI Logic MegaRAID Ser523 в формате PCI-X-133 с четырьмя портами для подключения SATA-дисков.
    • два жестких диска Seagate ST31000340AS емкостью 1 Тб, предназначенные для промежуточного хранения данных;
    • два жестких диска Seagate ST3500320NS емкостью 500 Гб для объединения в RAID1 и установки на них операционной системы;
    • RAID-контроллер SCSI для подключения ленточного накопителя LSI Logic LSI20320-HP в формате PCI-X-133 с внешним SCSI-интерфейсом;
    • Ленточный накопитель HP Storage Works Ultrium 1840LTO4 вместе с кабелем для подключения к внешнему SCSI-интерфейсу.

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

Подготовка кэш-сервера

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

Первым шагом установим операционную систему на наш кэш-сервер. Так как в Linux-системах часто не поддерживаются те или иные модели host-RAID-контроллеров, имеет смысл не рисковать и для размещений непосредственно операционной системы собрать RAID1 на базе имеющегося контроллера известной модели LSI Logic MegaRAID Ser523 идвух SATA-дисков по 500 Гб. Оставшиеся два жестких диска по 1 Тб мы подключим к контроллеру на материнской плате без объединения в RAID-массив. Таким образом, сама операционная система и прикладное ПО будут установлены на RAID1, а два отдельных диска по 1 Тб предназначены для хранения временных резервных копий.

Сами жесткие диски по 1 Тб, предназначенные для хранения промежуточных копий, имеет смысл подключить и разметить во время установки системы. Создаем на каждом издисков по одному тому и используем точки монтирования /vol0 и /vol1 соответственно.

Установка операционной системы производится в обычном режиме. При установке программного обеспечения в качестве шаблона инсталляции выбираем Server GUI. Из оконных менеджеров выбираем Gnome за его простоту и экономичность.

Из дополнительных программных пакетов необходимо установить Samba для организации файлового сервера в среде Windows, а также VNC-сервер для обеспечения работы xrdp. Также рекомендуется установить пакеты из категории «Development: Development Libraries, Development tools, Legacy Software development», чтобы иметь возможность в дальнейшем инсталлировать программное обеспечение.

И еще установим супердемон xinetd, чтобы иметь возможность запускать программу SWAT для управления сервером Samba.

Сразу при инсталляции создадим учетную запись (например, backuper), из-под которой и будет производиться работа по резервному копирования (см. рис. 2).

Если по каким-либо причинам не удалось создать ее сразу, в дальнейшем можно будет воспользоваться инструментом User Manager, который запускается из основного меню: System -> Administration -> Users and Groups (см. рис. 3).

Примечание: при невозможности воспользоваться программой User Manager можно воспользоваться командой useradd с соответствующими ключами.

Стоит немного сказать об основной концепции настройки программного обеспечения в нашем случае – максимально использовать возможности графического интерфейса. Большинство UNIX-гуру сразу бы запустили любимую оболочку (shell) командной строки, принялись вводить команды и редактировать конфигурационные файлы. Но в нашем случае предстоит непростой процесс передачи полномочий другому лицу, скорей всего мало знакомому с работой с интерфейсом командной строки в UNIX-системах. Поэтому все, что можно сделать через графический интерфейс, должно быть сделано именно так. Исходя из этих соображений, мы создадим на рабочем столе иконку для запуска Midnight Commander (см. рис. 4).

Как уже упоминалось выше, при настройке Samba мы также не будем отклоняться от намеченной стратегии и воспользуемся веб-интерфейсом под названием SWAT.

Так как SWAT запускается посредством супердемона xinetd, необходимо подредактировать файл./etc/xinet.d/swat

Вот как примерно должен выглядеть файл после редактирования:

# default: off

# description: SWAT is the Samba Web Admin Tool.

# Use swat to configure your Samba server.

# To use SWAT, connect to port 901

# with your favorite web browser.

service swat

Port = 901

Socket_type = stream

Wait = no

User = root

Server = /usr/sbin/swat

Log_on_failure += USERID

Disable = no

Теперь можно запустить сам веб-интерфейс. Набираем в строке браузера (например, Mozilla Firefox) адрес http://127.0.0.1:901 и, введя имя пользователя root с соответствующим паролем, попадаем в окно SWAT. Далее, воспользовавшись вкладкой Password, необходимо задать имя пользователя для доступа к назначаемым сетевым ресурсам. Для того чтобы избежать дополнительных проблем, настоятельно рекомендую использовать те же имя и пароль пользователя, которые уже заведены в системе. Поэтому вводим имя пользователя backuper, тот же пароль, что и при создании пользователя UNIX, и нажимаем кнопку Add New User, далее необходимо разрешить данную учетную запись, поэтому нажимаем кнопку Enable User (см. рис. 5).

Примечание: при невозможности воспользоваться программой SWAT можно использовать команду smbpasswd с ключами -a для добавления и -e для разрешения учетной записи пользователя Samba.

Для того, чтобы иметь возможность более гибко распорядиться дисковыми ресурсами (например, в дальнейшем убрать некоторые файлы из общего доступа, перенеся их в другой каталог), создадим на подключенных дисках vol0 и vol1 каталоги /vol0/backup0 и /vol1/backup1. Для того, чтобы пользователь backuper имел доступ в эти ресурсы, сменим владельца каталога на backuper и зададим соответствующие права. Для этих целей довольно удобно использовать Midnight Commander.

Примечание: при невозможности воспользоваться программой Midnight Commander нужно использовать команды: mkdir – для создания каталога, команды chmod и chown – для изменения разрешений и смены владельца (группы) соответственно.

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

Запускаем программу Terminal или любую другую оболочку командной строки. При необходимости переходим в режим суперпользователя root:

# su

Файлы устройств: /dev/sda, /dev/sda1, /dev/sda2 и /dev/sda3 нас не интересуют, так как относятся к уже подключенному дисковому массиву RAID1 с операционной файловой системой. А вот /dev/sdb и /dev/sdc как раз и являются файлами устройств тех самых дисков, которые предстоит подключить.

Если возникли трудности с определением какой файл устройства какому диску принадлежит, можно воспользоваться командой fdisk с параметром -l:

#fdisk -l

Disk /dev/sda: 500.0 GB, 500093157376 bytes

255 heads, 63 sectors/track, 60799 cylinders

/dev/sda1 * 1 5222 41945683+ 83 Linux

/dev/sda2 5223 6266 8385930 82 Linux swap / Solaris

/dev/sda3 6267 60799 438036322+ 83 Linux

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes

255 heads, 63 sectors/track, 121601 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

Для создания необходимого раздела на диске вызываем программу fdisk:

# fdisk /dev/sdb

Первоначально программа выдает сообщение, подобное этому:

Device contains neither a valid DOS partition table, nor Sun,

SGI or OSF disklabel

Building a new DOS disklabel. Changes will remain in memory only,

until you decide to write them. After that, of course,

the previous content won"t be recoverable.

The number of cylinders for this disk is set to 121601.

There is nothing wrong with that, but this is larger than 1024,

and could in certain setups cause problems with:

1) software that runs at boot time (e.g., old versions of LILO)

2) booting and partitioning software from other OSs

(e.g., DOS FDISK, OS/2 FDISK)

Warning: invalid flag 0x0000 of partition table 4

will be corrected by w(rite)

Создаем новый раздел:

Command (m for help): n

Проверяем список созданных разделов:

Command (m for help): p

В ответ программа выдаст информацию о созданных разделах:

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes

255 heads, 63 sectors/track, 121601 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sdb1 1 121601 976760001 83 Linux

Записываем изменения и выходим из программы:

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

Создаем файловую систему на новом дисковом разделе:

# mkfs.ext3 /dev/sdb1

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

# tune2fs -c 0 -i 0 /dev/sdb1

Создаем каталог для монтирования вновь созданного раздела с файловой системой:

# mkdir /vol0

И монтируем файловую систему:

# mount -t ext3 /dev/sdb1 /vol0

По аналогии размечаем и монтируем второй диск (/dev/sdc).

Для того чтобы созданные нами разделы автоматически монтировались при запуске, необходимо отредактировать файл /etc/fstab. Пример файла /etc/fstab:

# vi /etc/fstab

LABEL=/ / ext3 defaults 1 1

/dev/sdb1 /vol0 ext3 defaults 0 0

/dev/sdc1 /vol1 ext3 defaults 0 0

tmpfs /dev/shm tmpfs defaults 0 0

devpts /dev/pts devpts gid=5,mode=620 0 0

sysfs /sys sysfs defaults 0 0

proc /proc proc defaults 0 0

LABEL=SWAP-sda2 swap swap defaults 0 0

Далее снова воспользовавшись SWAT, создаем общий ресурс для резервных копий. Переходим на вкладку Share. Далее задаем имя ресурса: в нашем случае backup0. Указываем путь к каталогу: в нашем случае /vol0/backup0 и пользователей, имеющих право доступа к каталогу valid users и admin users (см. рис. 6).

В конечном итоге конфигурационный файл Samba – smb.conf должен выглядеть примерно следующим образом:

Workgroup = VAI.LAN

Server string = Backup Server LTO4

Passdb backend = tdbsam

Username map = /etc/samba/smbusers

Ldap ssl = no

Cups options = raw

Comment = All Printers

Path = /var/spool/samba

Printable = Yes

Browseable = No

Comment = Backup0

Path = /vol0/backup0

Valid users = backuper

Admin users = backuper

Read only = No

Browseable = No

Comment = Backup0

Path = /vol1/backup1

Valid users = backuper

Admin users = backuper

Read only = No

Browseable = No

Где vol0 и vol1 – собственно и есть вышеописанные диски по 1 Тб для хранения резервных копий.

Ну и наконец переходим к настройке программного обеспечения для выполнения резервного копирования на ленту – HP Data Protector Express Single Server Edition. Для начала зайдем на страничку программы http://www.hp.com/go/dataprotectorexpress/sse для регистрации и получения ключа (valid key). Маленький секрет – желательно использовать MS Internet Explorer, так как в других браузерах скрипт может работать некорректно (например, мне в первый раз с Mozilla Firefox 3.0 и OpenSUSE Linux 11.1 ключ получить не удалось). Ответив на необходимые вопросы и получив на e-mail с valid key, приступаем к установке программы.

Для этого входим в систему как пользователь backuper, вставляем CD с программой, получаем доступ к CD (при необходимости монтируем носитель) и запускаем программу Terminal (командную строку).

Набираем команду su и вводим пароль пользователя root для перехода в режим суперпользователя. И, перейдя в каталог с примонтированным CD, запускаем программу install. Запустится окно установки программы (см. рис. 7).

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

В конце программа-инсталлятор предложит запустить HP Data Protector Express Single Server Edition.

К сожалению, так как программа была запущена из-под учетной записи root, то и ярлык для запуска программы также был создан в домашнем каталоге пользователя root. Для устранения этого нюанса нужно всего лишь скопировать ярлык с рабочего стола (Desktop) из домашнего каталога root на рабочий стол пользователя backuper и назначить соответствующие права.

Создание запланированной задачи по резервному копированию

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

Для начала запускаем программу HP Data Protector Express Single Server Edition. (Если программа уже запущена, данный шаг можно пропустить.)

При старте программы потребуется ввести пароль доступа. По умолчанию реквизиты для доступа: сервер localhost, имя пользователя admin, без пароля (см. рис. 8).

Далее запустится основное окно программы. Надо отдать должное разработчикам – программа имеет простой и понятный интерфейс, большинство операций выполняется при помощи «помощников» (Wizards) (см. рис. 9). Для получения информации по работе с программой на инсталляционном диске имеется подробная документация.

По умолчанию при запуске программы сразу открывается раздел Wizards. (Для перехода в данный раздел можно воспользоваться иконкой Wizards в правой части окна.) Кликаем на значке Backup и переходим в окно выбора способа копирования. Кликаем на самой нижней иконке в левой части окна Backup Specific и переходим в окно Wizard – Welcome. Вполе Enter the name for the commanf being created вводим имя нашего задания и щелкаем кнопку Next.

Теперь мы попадаем в окно Select files and folders, где выбираются файлы и каталоги, подлежащие копированию на ленту.

Далее после нажатия кнопки Next появляется окно Device Options. Здесь необходимо выбрать используемое устройство (Device to be used), а также установить некоторые параметры: «Автоформатирование» (Auto format – Auto format mode), «Имя нового носителя» (New media name) и др. (см. рис. 10).

Снова нажимаем кнопку Next. В открывшемся окне Job Options задаем следующие параметры (см. рис. 11):

  • Backup Mode – Full (будем создавать полный бэкап).
  • Auto verify mode – Quick verify (режим автопроверки. По умолчанию стоит Full verify, но режим полной проверки архива занимает весьма продолжительное время, сравнимое со временем выполнения копирования, поэтому в данном случае ограничимся проверкой на читаемость носителя, учитывая тот факт, что мы каждый день создаем полную копию данных. Следует помнить, что для твердой уверенности в качестве записанной копии следует обязательно использовать режим Full verify).
  • Span mode – Split file. В случае если файл слишком велик для использования на одном носителе, использовать несколько носителей. В другом случае, при выборе Restart file, программа будет просить поместить в накопитель другой носитель большего размера.
  • Change mode – Prompt to another media. Если программа не обнаруживает требуемый носитель, она высылает предупреждение с просьбой загрузить искомый носитель в накопитель.

Рисунок 11. Окно Job options

Окно Encryption/Compression появляется сразу после Job options. Здесь задаются параметры шифрования (encryption) и сжатия (компресии). Следует заметить, что заявленный объем для носителей LTO (1,6 Гб для LTO4, 800 Мб для LTO3 и т.д.) будет доступен только при включении аппаратного сжатия. (И то при условии, что информация на носителе может быть успешно сжата).

Предпоследнее окно – Shedule job, как и следует из названия, служит для планирования выполнения задания в нужное время. Так как мы собираемся всего лишь запускать Full backup в нужное время, при этом просто перезаписывая вставленный носитель и не обращая внимания на дополнительные нюансы типа ротации носителей, то ограничимся самым простым расписанием.

Для этого выбираем:

  • Shedule type – Run repeatedly. Для создания настроек расписания.
  • Start time – 10:30. Время старта задания. К этому времени у нас в любом случае должен завершиться ночной Full backup c рабочих серверов на кэш-сервер.
  • Start date – 15/05/2009. Дата начала бэкапа.
  • Rotation type – No rotation. В нашем случае ротация носителей не требуется.

И в последнем окне Copy Policy остается нажать кнопку Finish.

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

Проверка возможности восстановления из резервной копии

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

Для этого снова перейдем в окно Wizards и выберем иконку Restore. Это приведет нас в следующее окно, где нам будет предложен всего один-единственный метод восстановления Restore Specific. Жмем на одноименную иконку и переходим в окно Select files and folders. Здесь выбираются файлы, подлежащие восстановлению.

После нажатия кнопки Next мы переходим в окно Device options, в котором собственно и выбирается устройство и носитель, с которого будут восстанавливаться файлы.

Далее по кнопке Next перед нами появляется окно Job options. Основная деталь, на которую надо обратить внимание, – флажок Restore files that are in use (восстанавливать ли файлы, использующиеся в данный момент). Дополнительные параметры, устанавливаемые в окне Advanced options, вызываемом по нажатию одноименной кнопки, в большинстве случаев лучше оставить без изменения (см. рис. 12).

Рисунок 12. Окно Job options с открытым окном Advanced options

Ну и наконец уже знакомое нам окно планировщика Shedule job.

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

Настройка ntbackup

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

Для запуска программы достаточно в строке запуска «Выполнить» (Run) меню «Пуск» (Start) ввести имя программы ntbackup и нажать .

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

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

Отметив необходимые пункты, нажимаем кнопку «Далее» и переходим к следующему окну «Имя, тип и расположение архивации», где указывается ресурс, на который будет производиться копирование (мы указываем адрес и расшаренный ресурс нашего кэш-сервера).

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

В окне «Тип архива» выбираем какой архив мы будем делать: «Обычный» (Full backup), «Добавочный» (Differential), «Разностный» (Incremental) и т.д. Следующее окно предлагает выбрать «Способы архивации».

Назначить метод копирования и указать цель (файл или устройство). Далее задание можно либо запустить сразу, либо запланировать на определенное время. При планировании задания в «Планировщике» Windows (Windows Sheduler) появится задание в виде командной строки с длинным перечнем параметров. (Которую при желании можно вставлять в скрипты и т.д.). Помимо всего прочего, данная программа умеет корректно копировать открытые файлы. Как говорится – «дешево и сердито». Эту программу мы будем использовать для сбора информации с серверов, работающих под Windows.

Завершающая настройка системы резервного копирования

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

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

Заключение

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

Статьи по теме: