В настоящее время я использую rsnapshot для реализации ежедневной / еженедельной / ежемесячной схемы резервного копирования на внешний диск. В последнее время я много читал о файловых системах копирования при записи, таких как zfs и btrfs. Мне очень нравится возможность сохранять снимки, чтобы вернуться назад во времени.
Есть ли серьезные недостатки у следующего подхода к созданию истории ежедневных резервных копий?
- Каждый день я синхронизировал свои данные с внешним диском, отформатированным в zfs или btrfs, с помощью rsync.
- После этого я бы создал снимок.
- Вероятно, следует реализовать некоторое прореживание резервной цепочки.
решение1
Это рабочая схема, но для большего удобства вы можете хранить данные на zfs. Это даст следующие преимущества:
- вы сможете создавать моментальные снимки именно там, где они вам нужны — это устраняет необходимость переносить данные обратно во время процедуры восстановления.
- вы сможете выполнять резервное копирование на второй хост с помощью инкрементных снимков, а это, в свою очередь, означает, что а) это быстрее; б) в отличие от инкрементных архивных пакетов, инкрементный снимок будет добавлять данные к существующему фрагменту, а не просто лежать на диске одним куском и ждать последовательного извлечения для получения полной копии; в) у вас автоматически будет два набора снимков — один на основном хосте, а другой на втором.
- вам не нужно будет учитывать время, необходимое rsync для синхронизации ресурсов, чтобы начать создание снимка после завершения rsync, чтобы получить согласованное состояние снимка (часто это может быть не так уж и важно, но в любом случае, одной причиной меньше).
решение2
Посмотри набтрбк. В принципе, то, что написал предыдущий автор, можно сделать и с помощью btrfs. Btrbk автоматизирует это для вас. Разница в скорости между rsnapshot на основе rsync и btrbk на основе отправки/получения btrfs очень убедительна. Поскольку это так просто, у меня теперь есть задание cron, которое делает резервные копии каждый час.