Jump to content

BTRFS/Оптимизация

← Назад: Введение и разметка Вперёд: Обслуживание →

Опубликовано: 30.10.2025 • Обновлено: 11.01.2026

⚠️ Эта статья находится в разработке. Содержание может измениться в ближайшее время.

После установки ROSA Linux на файловую систему BTRFS систему можно дополнительно настроить, чтобы повысить производительность, сократить количество лишних операций записи и продлить срок службы накопителя. В этом разделе подробно разбираются параметры монтирования и инструменты, которые реально влияют на работу BTRFS.

Что такое оптимизация BTRFS

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

Оптимизация — это осознанная настройка параметров под:

  • тип накопителя (SSD / NVMe / HDD);
  • характер нагрузки (рабочая станция, сервер, ноутбук);
  • требования к скорости, износостойкости и безопасности данных.

Проверка текущих параметров

Перед внесением изменений полезно посмотреть, как файловая система смонтирована сейчас:

mount | grep btrfs

Пример вывода:

/dev/sda2 on / type btrfs (rw,relatime,ssd,space_cache=v2,subvolid=5)

Основные параметры:

  • ssd — BTRFS автоматически определил твердотельный накопитель;
  • space_cache=v2 — используется современный механизм учёта свободного пространства;
  • relatime — обновление времени доступа включено в щадящем режиме.

Рекомендуемые параметры для SSD и NVMe

Для SSD и NVMe рекомендуется добавить следующие параметры монтирования в файл /etc/fstab:

noatime,ssd,space_cache=v2,discard=async,compress=zstd:5,autodefrag

Назначение параметров:

  • noatime — отключает обновление времени доступа, снижая количество операций записи;
  • ssd — включает оптимизации алгоритмов ввода-вывода под SSD (часто определяется автоматически);
  • space_cache=v2 — ускоряет работу с метаданными свободного пространства;
  • discard=async — асинхронный TRIM без влияния на производительность;
  • compress=zstd:5 — оптимальный баланс между скоростью и степенью сжатия;
  • autodefrag — помогает бороться с фрагментацией часто изменяемых файлов.

Рекомендуемые параметры для HDD

Для классических жёстких дисков предпочтительны более щадящие настройки:

noatime,space_cache=v2,compress=zstd:3,autodefrag,commit=60

Пояснение:

  • compress=zstd:3 — меньше нагрузка на CPU;
  • autodefrag — снижает фрагментацию;
  • commit=60 — уменьшает количество операций записи (по умолчанию 30 секунд).

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

Проверить, включено ли сжатие:

sudo btrfs property get / compression

Если вывод содержит:

compression=zstd

— сжатие активно.

Принудительное сжатие существующих данных

Файлы, записанные до включения сжатия, можно обработать вручную:

sudo btrfs filesystem defragment -r -v -czstd /
  • -r — рекурсивно;
  • -v — подробный вывод;
  • -czstd — применить алгоритм Zstandard.

Настройка TRIM

Для большинства систем рекомендуется использовать периодический TRIM:

sudo systemctl enable --now fstrim.timer

Проверка статуса:

systemctl status fstrim.timer

Использовать одновременно discard=async и fstrim.timer не требуется — достаточно одного способа.

Балансировка BTRFS

Со временем данные могут распределяться по чанкам неравномерно. Для оптимизации использования пространства применяется балансировка:

sudo btrfs balance start -dusage=50 -musage=50 /

Рекомендуется запускать балансировку примерно раз в 1–2 месяца или при нехватке свободного места.

Проверка использования диска

Чтобы посмотреть распределение данных:

sudo btrfs filesystem df /

Команда показывает использование данных, метаданных и системных блоков.

btrfs-assistant

btrfs-assistant — графическое приложение для управления BTRFS, упрощающее оптимизацию и обслуживание.

Возможности:

  • управление подтомами и снапшотами;
  • запуск балансировки, scrub и дефрагментации;
  • настройка параметров и автоматических задач;
  • интеграция с Timeshift и Snapper.

Установка:

sudo dnf in btrfs-assistant

Запуск:

btrfs-assistant

Важные примечания и компромиссы

Выбор уровня сжатия

  • zstd:1–3 — минимальная нагрузка;
  • zstd:5 — рекомендуемый баланс;
  • zstd:7+ — максимальное сжатие, но возможные потери производительности.

autodefrag

Рекомендуется:

  • для рабочих станций и ноутбуков;
  • при активной работе с мелкими файлами.

Не рекомендуется:

  • для баз данных;
  • для образов виртуальных машин;
  • для больших последовательно записываемых файлов.

discard и commit

  • discard=async подходит для качественных SSD;
  • commit=60 уменьшает износ, но увеличивает риск потери последних данных при аварийном отключении питания.

Что не является оптимизацией

  • частая балансировка без необходимости;
  • дефрагментация статичных больших файлов;
  • использование максимального уровня сжатия без причины.

Итоги

Грамотная оптимизация BTRFS позволяет:

  • повысить отзывчивость системы;
  • сократить износ SSD;
  • уменьшить занимаемое дисковое пространство;
  • сохранить баланс между производительностью и надёжностью.

Оптимизация BTRFS — это не включение всех параметров сразу, а осознанный выбор под реальные задачи системы.

← Назад: Введение и разметка Вперёд: Обслуживание →