Назад | Перейти на главную страницу

Как сделать так, чтобы ZFS делала снимки каталога только при изменении файлов?

Возможно ли, чтобы ZFS делал снимки файловой системы, то есть пула / файловой системы / только при изменении файлов? Можно ли, чтобы ZFS автоматически делала снимки после изменения файла, вместо использования cron или чего-то еще для автоматического создания снимка каждые 5 минут?

Возможно ли это и что это будет связано? Как бы ты это сделал?

Заранее спасибо.

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

Несколько вариантов:

1) zfs diff на основе cron (Solaris 11 Express ++) и если что-то изменилось -> Snapshot () 2) dtrace zfs snapshot trigger

Последнего я не делал, но читал об этом. 1), вероятно, самый простой способ что-то сделать, хотя вы можете пропустить некоторые изменения, но у вас не будет снимков без накопления изменений.

С уважением, Роберт

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

Предполагая, что вы хотите избежать создания моментальных снимков с неизмененными файлами каждые пять минут, вы можете реализовать запускаемые записи сценария dtrace, которые создают файл флага; затем скрипт, который периодически запускается через cron, который создает моментальный снимок при наличии файла флага. Константин Гонсалес написал запись в блоге, в которой рассказывается о большей части того, что вам может понадобиться для реализации этого:

http://constantin.glez.de/blog/2010/04/how-automatically-update-your-home-media-server-library-dtrace