Резервные копии системы на базе zfs
Недавно я установил систему Ubuntu 22.04 на своем домашнем сервере. В качестве файловой системы я выбрал ZFS. Я буду использовать систему Ubuntu для нескольких задач, которые нелегко выполнить в Windows, и я хотел бы запустить небольшую установку Kubernetes.
Поэтому мне интересно, какая стратегия резервного копирования будет лучшей. Будучи незнакомым с ZFS, я сделал небольшое руководство (https://ubuntu.com/tutorials/using-zfs-snapshots-clones) и погуглил. На данный момент я бы предположил, что периодически запускаю задание cron, которое отправляет полную резервную копию файловой системы моей машины на мой NAS. В списке zpool моей Ubuntu показаны 2 пула (bpool и rpool).
Я могу представить 2 сценария:
- Моя установка испорчена, я хочу вернуться к более раннему снимку (т. е. на прошлой неделе).
- Диск моего сервера умирает
Я подумал, что в обоих случаях я мог бы (возможно) сделать что-то подобное, как описано здесь: Как правильно сохранять и восстанавливать зашифрованные снимки ZFS для стандартной установки Ubuntu?Итак, я бы сделал (периодически, через cron):
-
zfs snapshot -r rpool@snapshotname -
zfs snapshot -r bpool@snapshotname - отправьте оба снимка в NAS с помощью
zfs send --replicate --raw rpool@snapshotname > /mnt/nas-mount/ubuntu-snapshots/snapshotname.zstreamиzfs send --replicate --raw bpool@snapshotname > /mnt/nas-mount/ubuntu-snapshots/snapshotname2.zstream
Могу ли я затем восстановить свою систему в случае совершенно нового диска, запустив
-
zfs receive newrpool < /mnt/nas-mount/ubuntu-snapshots/snapshotname.zstream - и откатиться к снимку через
zfs rollback -rR NAME
Или это будет работать только до тех пор, пока я хочу восстановить данные, но диск в порядке? Есть ли что-нибудь еще, что стоит рассмотреть или идея получше? К сожалению, у меня нет двух систем с ZFS.