Активировать снимки ZFS

Я случайно удалил некоторые файлы из своего пула zfs и попытался смонтировать последние снимки, но я только что понял, что у меня нет снимков. Как активировать снимки, как их настроить?

Я использую сервер Ubuntu 12.04.1 и zfs 0.6.1, версия пула 28.

13
задан 17 December 2013 в 13:09

3 ответа

Начиная с Ubuntu 17.04, вы можете установить zfs-auto-snapshot следующим образом:

sudo apt install zfs-auto-snapshot

Для версий Ubuntu до 17.04 вы можете настроить zfs-auto-snapshot на использование автоматических снимков из репозитория

sudo add-apt-repository ppa:zfs-native/stable; sudo apt-get install zfs-auto-snapshot

или напрямую из github

curl -L https://github.com/zfsonlinux/zfs-auto-snapshot/archive/master.tar.gz | tar xz -C /tmp/
pushd /tmp/zfs-auto-snapshot-master && sudo make install && popd && rm -rf /tmp/zfs-auto-snapshot-master

По умолчанию он создает снимки для каждого набора данных каждые 15 минут и сохраняет снимок до 1 года. Однако вы можете отключить снимки для определенного набора данных, задав для свойства com.sun:auto-snapshot значение false

sudo zfs set com.sun:auto-snapshot=false tank/tmp

Вы также можете использовать свойства com.sun:auto-snapshot:... для настройки поведения автоматического снимка. Например. сохранять снимки ежедневно в течение 31 дня для набора данных резервуара / резервной копии:

sudo zfs set com.sun:auto-snapshot=true tank/backup
sudo zfs set com.sun:auto-snapshot:monthly=false tank/backup
sudo zfs set com.sun:auto-snapshot:weekly=false tank/backup
sudo zfs set com.sun:auto-snapshot:daily=true tank/backup
sudo zfs set com.sun:auto-snapshot:hourly=false tank/backup
sudo zfs set com.sun:auto-snapshot:frequent=false tank/backup

По умолчанию сценарий сохраняет:

  • частые снимки каждые 15 минут, сохраняя 4 снимка
  • ежечасные снимки каждый час, сохраняя 24 снимка
  • ежедневных снимков каждый день, сохраняя 31 снимок
  • еженедельных снимков каждую неделю, сохраняя 7 снимков
  • ежемесячных снимков каждый месяц, сохраняя 12 снимков
0
ответ дан 17 December 2013 в 13:09

Если вы не сделали ни одного снимка, вы потеряли свои данные.

Чтобы сделать снимок, используйте команду zfs snapshot

http://docs.oracle.com/cd/E19253-01/819-5461/gbcya/index.html [ 114]

0
ответ дан 17 December 2013 в 13:09

Я ищу в Интернете какие-либо справочные страницы или, по крайней мере, список настраиваемых свойств zfs-auto-snapshot, но, возможно, я слепой? Можете ли вы добавить несколько слов или ссылку, пожалуйста? Я нашел README , но я не могу понять, как я мог изменить или даже прочитать упомянутые значения.

Итак, попробуйте выполнить простую задачу: как увеличить или уменьшить количество сохраняемых ежемесячных снимков (имея в виду дисковое пространство).

Sun использует инструменты svcadm или слайдер времени, которые кажутся несуществующими в Ubuntu, я прав?

Например:

svccfg -s svc:/system/filesystem/zfs/auto-snapshot:frequent setprop zfs/period = 30
svccfg -s svc:/system/filesystem/zfs/auto-snapshot:frequent refresh

svcadm restart svc:/system/filesystem/zfs/auto-snapshot:frequent

Я надеюсь, что этот пост уместен здесь, так как по умолчанию отлично, но, возможно, многие пользователи с «почти полными» пулами будут бояться нехватки дискового пространства.

РЕДАКТИРОВАТЬ: у меня была другая проблема с zfs-auto-snapshot. Снимки создавались в 8:00 утра, примерно в начале рабочего дня. Какая плохая идея, предполагая, что разрушение устаревших снимков, которое может быть очень интенсивной операцией и занимать довольно много времени, также произойдет в это время. Я вижу это как риск вождения системы непригодным для использования в худшее время суток. Похоже, что это просто запись в /etc/cron.daily (еженедельно, ежемесячно), поэтому достаточно замены строки анакрона для ежедневных (или любых других) заданий в crontab.
Я пропускаю упоминание об этом в readme.

0
ответ дан 17 December 2013 в 13:09

Другие вопросы по тегам:

Похожие вопросы: