oko96
заметки о домашних серверах и бэкапах

Правило 3-2-1 на практике

Классическая формулировка: три копии данных, на двух разных типах носителей, и одна из них — в другом месте. Звучит просто, но на деле важны детали.

Три копии

Оригинал на рабочем компьютере считается первой копией. Вторая — на домашнем хранилище, третья — вне дома. Две копии на одном диске в разных папках — это одна копия.

Два типа носителей

Смысл не в «типе» как таковом, а в том, чтобы одна причина не убила обе копии сразу: один и тот же контроллер, одна партия дисков, один блок питания. Внешний диск, который хранится отключённым, закрывает заодно и шифровальщиков.

Одна копия вне дома

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

restic -r sftp:backup@remote:/srv/restic backup ~/Documents ~/Photos
restic -r sftp:backup@remote:/srv/restic forget --keep-daily 7 --keep-weekly 8 --keep-monthly 12 --prune

Проверка восстановления

Бэкап, из которого ни разу не восстанавливали, — это надежда, а не бэкап. Раз в месяц я достаю случайный файл и раз в полгода — целую папку на чистую машину.

restic -r sftp:backup@remote:/srv/restic check --read-data-subset=5%
restic -r sftp:backup@remote:/srv/restic restore latest --target /tmp/restore-test --include ~/Photos/2024

Что легко упустить

  • Пароль от зашифрованного репозитория должен храниться не только на компьютере, который вы бэкапите.
  • Синхронизация (облачная папка) — не бэкап: удалённый или испорченный файл синхронизируется так же быстро.
  • Уведомление о сбое бэкапа важнее, чем сам бэкап: тихо остановившееся копирование обнаруживается только в день, когда оно нужно.