суббота, августа 23, 2008

Организация бэкапов в linux

Долгое время я вполне обходился рукописным велосипедом для создания бэкапов. Ну т.е. использовал tar с небольшими скриптами.

Но недавно наткнулся на достаточно удобную утилиту написанную на perl - rsnapshot. Она использует rsync и hard links для создания серии бэкапов с заданными промежутками (у меня например создаются каждые 4 часа, каждый день и каждую неделю). При этом можно не просто указать что бекапить но и задать скрипты запускающиеся до/после очередного бекапа. Также есть много полезных функций например есть diff (например rsnapshot diff daily.0 daily.1 сравнит последний и предпоследний ежедневные бекапы), rsnapshot du покажет сколько отожрано места под ваши бекапы (отжирает надо сказать не так уж и много - читайте подробнее по ссылкам в заметке). Вобщем изучение man'а занимает минуты, всё просто и удобно - советую.

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

Ссылки по теме:
  1. http://www.mikerubel.org/computers/rsync_snapshots/ - желающим соорудить свой велосипед во чтобы то ни стало :)
  2. http://gentoo-wiki.com/HOWTO_Backup_to_DVD - о тонкостях бэкапа на DVD
  3. http://www.linux-backup.net/App/ - куча ссылок по теме, но много устаревших

P.S. да и делайте бэкап не на тот же диск на котором данные которые вы бэкапите. Помните закон Мерфи - бэкап нужен тогда когда его нет.

Комментариев нет: