Блог Олега Сердюкова

Клонирование диска как часть стратегии резервного копирования (SuperDuper!)

Бекапы… Как в этом звуке для сердца русского слилось…

Впрочем, и для нерусского тоже.

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

Эту тему я рассматривал в статье ”Обзор методов клонирования загрузочного диска Mac OS X”, но пришло время углубиться в SuperDuper!.

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

Но offsite-бекапы нужны. Поэтому в офисе я решил дополнительно делать клон диска с помощью SuperDuper!

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

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

Устанавливаю копировать диск MacBook Pro на внешний диск с именем Clone (предварительно я удалил с него всё старое содержимое и создал раздел Clone в Disk Utility):

Нужно убедиться, что выбран тип копирования “Smart Update”:

Для сведения - опции Advanced:

Пока мне другие функции не нужны, но можно придумать, как их использовать.

Нажав Schedule на основном окне программы, создаю задачу:

Она появляется в списке:

Обязательно нужно сделать “Unlock”:

Если это не сделать, то будет ошибка в логах Console.app: “SuperDuper! could not copy automatically at the scheduled time because it is not unlocked. You must unlock SuperDuper! by clicking the Lock icon in the main window in order to run scheduled copies.”

Создаются задачи:

$ cd ~/Library/LaunchAgents/
$ ls com.shirtpocket.backuponmount*
com.shirtpocket.backuponmount-login.plist
com.shirtpocket.backuponmount.plist

Первая - для бекапа при входе пользователя в систему (com.shirtpocket.backuponmount-login.plist), вторая - при подключении внешнего диска (com.shirtpocket.backuponmount.plist):

Посмотреть детали можно в скрипте “~/Library/Application Support/SuperDuper!/Scheduled Copies/Backup on Mount.scpt”.

Вот процесс работы:

Как видно из LaunchAgents, для того, чтобы прошёл бекап, нужно быть залогиненым в систему. Кроме того, если используется Fast Switching, то account должен быть активным, а не в фоне, и экран должен быть разлочен:

SuperDuper! does not have to be running for a schedule backup to take place, but the user who scheduled it does have to be logged in, with their account in front (if Fast User Switching is active), and the screen must be unlocked.

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

А о стратегии резервного копирования поговорим в следующей статье.

Comments