В последних сборках SCXE появилась возможность управлять автоматическим созданием снапшотов файловых систем ZFS. Для этого в Service Management Facility добавлено несколько сервисов, осуществляющих управление заданиями cron(1M):
| FMRI | Частота создания снапшота | Время хранения |
|---|---|---|
| svc:/system/filesystem/zfs/auto-snapshot:frequent | 15 минут | 1 час |
| svc:/system/filesystem/zfs/auto-snapshot:hourly | 1 раз в час | 24 часа |
| svc:/system/filesystem/zfs/auto-snapshot:daily | 1 день | 31 день |
| svc:/system/filesystem/zfs/auto-snapshot:weekly | 1 неделя | 7 недель |
| svc:/system/filesystem/zfs/auto-snapshot:monthly | 1 месяц | 1 год |
Для начала создания снапшотов, необходимо включить нужные сервисы:
# svcadm enable auto-snapshot:frequent # svcadm enable auto-snapshot:hourly # svcadm enable auto-snapshot:daily
Это приведет к добавлению необходимых заданий в crontab пользователя zfssnap.
Список файловых систем, для которых выполняется автоматическое создание снапшотов контролируется параметром com.sun:auto-snapshot (также возможно использование параметров с указанием экземпляра сервиса auto-snapshot для более тонкой настройки, например com.sun:auto-snapshot:frequent):
# zfs set com.sun:auto-snapshot=false rpool # zfs set com.sun:auto-snapshot:frequent=true rpool/export/home/ivoronin # zfs set com.sun:auto-snapshot:hourly=true rpool/export/home/ivoronin # zfs set com.sun:auto-snapshot:daily=true rpool/export/home/ivoronin # zfs set com.sun:auto-snapshot:daily=true rpool/ROOT/snv_101
Таким образом мы будем получать снимки файловой системы pool/export/home/ivoronin каждые 15 минут, 1 час и 1 день и снимки файловой системы rpool/ROOT/snv_101 каждый день. Стоит отметить что все параметры ZFS по умолчанию являются наследуемыми - таким образом сделанные для rpool/export/home/ivoronin настройки отразятся и на всех дочерних файловых системах, например rpool/export/home/ivoronin/Projects и rpool/export/home/ivoronin/Documents.
Обратиться к резервным копиям файлов в снапшоте очень просто, - они доступы через скрытую директорию .zfs каждой из файловых систем:
ivoronin $ ls -l /.zfs/snapshot/ total 8 drwxr-xr-x 21 root root 23 2008-10-28 14:32 initial drwxr-xr-x 25 root root 26 2008-10-28 20:58 zfs-auto-snap:daily-2008-10-29-10:40 drwxr-xr-x 25 root root 26 2008-10-28 20:58 zfs-auto-snap:frequent-2008-10-29-10:40 drwxr-xr-x 26 root root 27 2008-10-29 10:44 zfs-auto-snap:frequent-2008-10-29-10:45 drwxr-xr-x 25 root root 26 2008-10-28 20:58 zfs-auto-snap:hourly-2008-10-29-10:40
Особо стоит отметить интеграцию этой функциональности в Nautilus, - файловый менеджер GNOME:
А что происходит в момент когда наступает время двух и более снепшотов? Например в 00:00.
а вот сразу и увидел ответ - все снепшоты будут созданы. У них в составном имени кроме времени есть частота.