btrfs. Работа со снепшотами

2026-09-19 · 2 мин. для прочтения
blog computer-science

btrfs. Работа со снепшотами.

Содержание

1 timeshift

  • Репозиторий: https://github.com/linuxmint/timeshift

  • Репозиторий timeshift-autosnap: https://codeberg.org/racehd/timeshift-autosnap

  • Изначально создавался для rsync и ext4.

  • Позже получил поддержку Btrfs.

  • Подходит для десктопных пользователей.

  • Можно рассматривать как аналог точек восстановления Windows.

  • Требует специфической разметки субтомов (subvolumes).

    • Корень должен быть в @, домашняя папка в @home.
    • При создании снапшота он захватывает только @ (систему), полностью игнорируя ваши личные файлы, загрузки и документы.
  • Плюсы:

    • Отличный GUI.
    • По умолчанию не трогает /home. Если вы откатите систему после неудачного обновления, ваши личные файлы, сохранения игр и рабочий стол останутся на месте.
    • Простота отката.
  • Минусы:

    • Жесткие требования к разметке
      • Если вы установили Linux с плоской структурой Btrfs (без выделения @ и @home), Btrfs-режим Timeshift работать не будет.

2 snapper

  • Репозиторий: https://github.com/openSUSE/snapper
  • Разработан создателями openSUSE.
  • Мощный, гибкий и глубоко интегрированный в систему инструмент.
  • Умеет работать с любой структурой субтомов.
  • Создает снапшоты через конфигурационные файлы (/etc/snapper/configs/).
  • Плюсы:
    • Автоматически делает снимки по расписанию (часовые, дневные, недельные, месячные) и сам чистит старые, чтобы не забить диск.
    • Можно настроить снапшоты для любой директории.
    • Можно настроить автоматическое создание снапшотов при использовании менеджера пакетов.
  • Минусы:
    • Сложность отката
      • При откате (snapper rollback) создаётся новый снапшот из старого.
    • Риск для /home.
      • Если вы настроите снапшоты для всего корня и не исключите /home, то при откате системы вы можете случайно откатить и свои личные файлы к прошлому состоянию
      • Поэтому /home лучше выносить в отдельный субтом.

3 yabsnap

  • Репозиторий: https://github.com/hirak99/yabsnap
  • Yet Another Btrfs Snapshotter.
  • Создан сообществом Arch Linux.
  • Потому что Snapper казался избыточным, а Timeshift — слишком тяжелым и требовательным к разметке.
  • Простая обертка над стандартными утилитами btrfs-progs. Оперирует базовыми концепциями Btrfs без лишней магии.
  • Плюсы:
    • Легковесность.
    • Простота.
    • Изначальная поддержка grub-btrfs.
  • Минусы:
    • Нет продвинутого планировщика.
      • Нет встроенной системы очистки старых снапшотов.

4 Сравнительная таблица

ХарактеристикаTimeshiftSnapperYabsnap
ИнтерфейсGUICLICLI
Сложность освоенияНизкаяВысокаяСредняя
Работа с /homeИгнорируетМожет затронутьЗависит от настроек
Требования к разметкеСтрогие (@ и @home)ЛюбыеЛюбые
Автоматическая очисткаБазоваяПродвинутаяОтсутствует (нужен cron)
Интеграция с grub-btrfsТребует флаг --timeshift-autoРаботает из коробкиРаботает из коробки
Дмитрий Сергеевич Кулябов
Authors
Профессор кафедры теории вероятностей и кибербезопасности
Работаю профессором на кафедре теории вероятностей и кибербезопасности Российского университета дружбы народов им. Патриса Лумумбы. Научные интересы относятся к области теоретической физики и математического моделирования.