Содержание


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

Часть 5. TimeVault - система резервного копирования

Comments

Серия контента:

Этот контент является частью # из серии # статей: Системы резервного копирования и управления IT-активами предприятия

Следите за выходом новых статей этой серии.

Этот контент является частью серии:Системы резервного копирования и управления IT-активами предприятия

Следите за выходом новых статей этой серии.

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

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

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

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

Краткое описание TimeVault

TimeVault отслеживает изменения файлов и позволяет сохранять архивные версии файлов с заданной пользователем периодичностью.

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

TimeVault состоит из двух компонентов:

  1. Демона, который отслеживает активность в указанных каталогах и не зависит от используемого оконного менеджера.
  2. Графического интерфейса, разработанного для оконного менеджера GNOME, позволяющего удобно настраивать систему резервного копирования и просматривать архивные образы. Часть функциональности встраивается в файловый менеджер Nautilus для облегчения нахождения нужных версий файлов.

Получение последней версии и установка

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

Если зайти на сайт TimeVault, то можно скачать последнюю версию программы TimeVault 0.7.5 в виде .deb-пакета (для Ubuntu или Debian).

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

Список необходимых пакетов может отличаться в зависимости от дистрибутива, его версии и уже установленного программного обеспечения. Для дистрибутива Ubuntu 9.10 список пакетов такой: python (>=2.5), python2.5-dev, python-gnome2, python-glade2, gksu, sudo, nautilus, python-nautilus, python-notify, python-gobject, python-gobject-dev, libpango1.0-0, python-dbus, dbus, zenity, python-pysqlite2, python-gamin, meld.

Для обладателей других дистрибутивов можно посоветовать либо при помощи специальных программ сконвертировать deb-пакет в пакет, поддерживаемый дистрибутивом, либо скачать tar.gz-архив с исходными текстами с сайта программы и самостоятельно собрать TimeVault.

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

wget http://launchpad.net/timevault/trunk/0.1/+download/timevault-0.7.2.tar.gz
tar -zxf timevault-0.7.2.tar.gz
cd 0.7.2
sudo install.sh

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

Некоторые особенности в установке будут для обладателей дистрибутивов для архитектуры amd64. В этом случае необходимо либо собрать TimeVault из исходных текстов, либо установить пакет библиотек для 32-битной архитектуры ia32-libs и принудительно установить пакет для архитектуры i386:

sudo dpkg -i --force-architecture timevault_0.7.5-1_i386.deb

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

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

Настройка нотификаций

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

Для этого в автозапуск нужно добавить программу “timevault-notifier”, установленную по умолчанию в /usr/bin. В Ubuntu это можно сделать следующим образом:

  1. Выбрать пункт меню System->Preferences->Startup Applications.
  2. На вкладке Startup Programs нажать кнопку Add.
  3. В открывшемся диалоговом окне в поле Command ввести /usr/bin/timevault-notifier.

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

Наличие серой иконки TimeVault на верхней панели GNOME говорит о том, что программа запущена, но параметры не установлены.

Иконка TimeVault на панели GNOME
Иконка TimeVault на панели GNOME
Иконка TimeVault на панели GNOME

Настройка параметров

Для настройки параметров TimeVault необходимо щелкнуть правой кнопкой мыши по иконке TimeVault и выбрать пункт Preferences и ввести пароль суперпользователя (root).

Все параметры размещены на четырех вкладках, рассмотрим их подробнее.

Вкладка General

Вкладка General
Вкладка General
Вкладка General

На этой вкладке задаются основные параметры конфигурации.

Enable automated snapshots – при включении данного переключателя архивирование данных будет запускаться автоматически с определенным интервалом времени.

Show snapshot notifications – определяет показывать ли уведомления при создании архивных образов.

Snapshots root directory – позволяет выбрать каталог, в который будут архивироваться данные.

Рекомендуется архивирование данных на носитель, отличный от того, на котором эти данные расположены. Это обезопасит архив данных от потери при выходе жесткого диска из строя. Также не рекомендуется использовать в качестве носителя для архива данных USB-flash накопители. Как показывает практика, данный тип носителей может оказаться ненадежным из-за ограниченного числа циклов записи.

Reserved free space on backup drive – задает пространство на диске, которое резервируется для создания архивов TimeVault.

Maximum file size to back up – ограничивает размер файла для добавления в архив. Это ограничение введено для того, чтобы не добавлять в архив большие файлы (например музыку, видеоролики), так как файлы документов обычно занимают не так много места. Параметр надо сконфигурировать исходя из размеров файлов данных с которыми приходится работать.

Enable Nautilus integration – включение интеграции в файловый менеджер Nautilus.

Disable automatic metadata signature generation for newly added paths – отключение сканирования новых путей к каталогам на наличие меток метаданных. Включение данной опции нежелательно, так как может привести к созданию лишних архивных образов без реального изменения данных.

TimeVault minimum time increment – задает временной интервал, в пределах которого генерация запланированных архивных образов блокируется.

Вкладка Include

Вкладка Include
Вкладка Include
Вкладка Include

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

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

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

Вкладка Exclude

Вкладка Exclude
Вкладка Exclude
Вкладка Exclude

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

Вкладка Expire

Вкладка Expire
Вкладка Expire
Вкладка Expire

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

Настройки разбиты на две группы. Первая группа “Apply expiration logic if any of the following conditions are met”. Здесь размещены критерии по которым определяется, что время жизни образа истекло.

More than this amount of time has passed since snapshot was taken – время прошедшее с момента создания образа, чтобы образ стал считаться устаревшим.

More than this many snapshots have been taken for a particular file – если какой-либо файл включен в большее количество образов, чем задано, образ считается устаревшим. Здесь имеется в виду не просто включение файла, а включение его измененных версий.

More than this amount of space has been used for a particular file – аналогично предыдущему пункту, только в расчет берется занимаемое пространство всеми архивными копиями какого-либо отдельного файла. Если это значение превышено, образ считается устаревшим.

Вторая группа настроек на этой вкладке “Expire a snapshot using the following rules”.

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

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

Merge snapshots taken within this time period, leaving only the latest one – архивные образы, созданные в пределах указанного периода объединяются в один, созданный позднее всех.

Thin snapshots by time, retaining the maximum of one snapshot per – сокращение количества образов с сохранением не более чем одного образа за указанный период.

После задания настроек необходимо нажать Save и закрыть окно настроек.

Работа с TimeVault

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

Иконка TimeVault при выполнении операций
Иконка TimeVault при выполнении операций
Иконка TimeVault при выполнении операций

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

Окно запланированных операций
Окно запланированных операций
Окно запланированных операций

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

Для просмотра образов необходимо щелкнуть правой кнопкой мыши по иконке TimeVault и выбрать один из пунктов меню “Snapshot Browser” или “Snapshot Browser as Root”. Разница между этими пунктами в том, что в первом случае показываются образы только тех файлов, для работы с которыми не нужно прав суперпользователя, во втором случае показываются все файлы.

Окно просмотрщика образов
Окно просмотрщика образов
Окно просмотрщика образов

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

В верхней части окна (Search snapshots for) можно указать каталог для которого будет показана история образов. Здесь можно показывать изменения только в определенном каталоге.

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

Переключатель Hide Real позволяет исключить из просмотра те файлы, которые были реально изменены в файловой системе.

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

В списке файлов в данном образе указывается время снятия образа (Time), путь к файлу (Path), причина снятия образа (Event) и размер файла (Size).

В качестве причины может быть указано:

  • Baseline – начальное создание образа;
  • Created – файл был создан;
  • Changed – файл был изменен;
  • Deleted – файл был удален;
  • Metadata – метаданные файла изменились.

Выбрав файл из списка с ним можно проделать операции удаления из образа (Delete), восстановить (Revert), просмотреть (Open).

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

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

Использование Meld для показа изменений в файле
Использование Meld для показа изменений в файле
Использование Meld для показа изменений в файле

Заключение

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

  • не всегда работает просмотр образов для указанного каталога (кроме /), чаще всего для обновления данных в этом случае надо пощелкать по переключателям Hide Real и Hide Meta, тогда появится список файлов, однако график образов, скорей всего, останется пуст;
  • в последней версии отключена способность интегрироваться с Nautilus (хотя подобная настройка есть, диалоговое окно при изменении этой настройки явно заявляет о том, что возможность отключена);
  • нотификации часто не появляются там, где им положено, а вываливаются в виде диалоговых окон, которые необходимо закрывать.

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

Послесловие

В настоящее время довольно активно развивается проект TimeVault от Andrew Stromme. Этот проект (по словам автора) призван возродить TimeVault в лучшем его виде. Проект создается под KDE 4.4.x, активно изменяется, однако будет совсем иным продуктом, который, возможно мы рассмотрим, когда он достигнет более или менее стабильной стадии.


Ресурсы для скачивания


Похожие темы

  • Системы резервного копирования и управления IT-активами предприятия. Часть 1.
  • Системы резервного копирования и управления IT-активами предприятия. Часть 2.
  • Системы резервного копирования и управления IT-активами предприятия. Часть 3.
  • Системы резервного копирования и управления IT-активами предприятия. Часть 4.
  • Системы резервного копирования и управления IT-активами предприятия. Часть 5.
  • Системы резервного копирования и управления IT-активами предприятия. Часть 6.
  • Системы резервного копирования и управления IT-активами предприятия. Часть 7.

Комментарии

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Linux, Open source
ArticleID=599841
ArticleTitle=Системы резервного копирования и управления IT-активами предприятия: Часть 5. TimeVault - система резервного копирования
publish-date=12092010