Проверка резервных копий

Frost проверяет копии по ходу работы, а frost status показывает, в каком они состоянии.

#frost status

frost status
┌  Frost  v0.1.0  sftp://[email protected]/~/frost  key 6f154dc10058
│
│  last backup  ok 2h ago  maple-absurd-3f1c
│  next backup  ~in 4h  6h via launchd
│  health       ok 21 objects checked 2h ago
│  updates      automatic
│  protected    1,204 files, 2.1 GB, in 3 snapshots
│  storage      1.2 TB of 4 TB used
│
├  snapshots
│
│  snapshot             taken                  files         size          new
│  maple-absurd-3f1c    2026-10-08 09:17       1,204       2.1 GB      14.2 MB
│  orbit-velvet-a02e    2026-10-08 03:17       1,201       2.1 GB       3.6 MB
│  canyon-pilot-77b9    2026-10-07 21:17       1,198       2.1 GB       2.1 GB
└

В первой строке указаны версия Frost, ваше хранилище и отпечаток ключа. Строки ниже показывают:

Строка Что показывает
last backup Когда была последняя копия и удалась ли она. После "ok, but" перечислены ненайденные папки, непрочитанные элементы и занятые файлы, у которых осталась прежняя копия
next backup Когда следующая автоматическая копия или что автоматическое копирование выключено
health Результат последней выборочной проверки
updates Автоматические ли обновления и вышла ли новая версия
protected Число файлов и размер самого нового снимка и общее количество снимков
storage Сколько места в хранилище занято: в учётной записи Permafrost относительно её лимита или на диске собственного сервера либо локального диска. Если есть предупреждение, например что хранилище почти заполнено, оно идёт первым
missing Снимки, о которых знал этот компьютер, но которых больше нет в хранилище

В списке показаны 10 последних снимков. Столбец new показывает, сколько новых данных добавил каждый. Чтобы увидеть все:

frost status --all

#Выборочная проверка

После каждой копии, которая сохраняет снимок, Frost скачивает случайную выборку блоков, расшифровывает каждый и проверяет, что он совпадает со своим идентификатором. Ещё он загружает список файлов самого нового снимка и проверяет, что знает о каждом нужном ему блоке. После копии без изменений Frost повторяет проверку, только если прошлой больше суток или она нашла проблему.

По умолчанию в выборке 20 блоков. Выборка побольше находит больше проблем, но и скачивает больше:

frost config set verify.sample 50

0 выключает выборочную проверку.

#Проверить сейчас

frost status --verify

Команда выполняет новую выборочную проверку и вдобавок сверяет локальный учёт блоков Frost со всем содержимым хранилища. Даже при verify.sample, равном 0, проверяются 20 блоков. Если проверка не прошла, команда завершается с кодом 1, так что её можно запускать из своего планировщика и проверять копии по другому расписанию.

#Если проверка не прошла

В строке health перечислено, что не прошло проверку. Обычно это значит, что хранилище потеряло или повредило часть блоков.

  1. Выполните frost backup. Все потерянные блоки, данные которых ещё есть на компьютере, будут отправлены заново.
  2. Выполните frost status --verify, чтобы проверить ещё раз.

Данные, которых уже нет на компьютере, отправить заново нельзя, и старые снимки, которым они нужны, не удастся восстановить полностью. Если блок остался в хранилище, но повреждён, резервное копирование не заменит его автоматически. Восстановите исправный блок из резервных копий самого хранилища или из независимой копии и повторите проверку.

#Пропавшие снимки

Если из хранилища исчезли снимки, о которых знал этот компьютер, frost status сообщит об этом один раз. Если вы переносили копии, укажите Frost их новое место. Подробнее в разделе Перенос резервных копий. Иначе их удалили из хранилища.

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