BTRFS/Оптимизация
| ← Назад: Введение и разметка | Вперёд: Обслуживание → |
⚠️ Эта статья находится в разработке. Содержание может измениться в ближайшее время.
После установки ROSA Linux на файловую систему BTRFS можно немного “прикрутить турбину” — сделать работу системы быстрее, а диск износостойким. В этом разделе подробно объясняется, какие параметры влияют на производительность и зачем они нужны.
Что такое оптимизация BTRFS
BTRFS умеет многое: сжимает файлы, автоматически исправляет ошибки, балансирует пространство. Но по умолчанию часть функций может быть выключена, чтобы система подходила всем типам компьютеров. Оптимизация — это настройка под ваш тип накопителя: SSD, NVMe или HDD.
Проверка текущих настроек
Перед изменением полезно узнать, с какими параметрами сейчас смонтирован диск.
mount | grep btrfs
Команда выводит список всех разделов BTRFS и их параметры. Например:
/dev/sda2 on / type btrfs (rw,relatime,ssd,space_cache=v2,subvolid=5)
- ssd — система автоматически определила, что диск твердотельный;
- space_cache=v2 — используется новая схема кэширования свободного места;
- relatime — обновление времени доступа включено (его можно отключить для ускорения).
Рекомендуемые параметры для SSD и NVMe
Откройте файл /etc/fstab и найдите строку, где монтируется корневой раздел (обычно «/»). Рекомендуемая конфигурация для SSD или NVMe выглядит так:
noatime,ssd,space_cache=v2,discard=async,compress=zstd:5,autodefrag
Что делает каждая опция:
- noatime — отключает запись времени последнего доступа к файлам. Это уменьшает количество операций записи и продлевает срок службы SSD.
- ssd — включает оптимизацию алгоритмов ввода-вывода под твердотельные накопители.
- space_cache=v2 — более современная и быстрая система учёта свободного пространства.
- discard=async — включает асинхронный TRIM, который очищает неиспользуемые блоки без потерь производительности.
- compress=zstd:5 — сжимает данные на лету. Число «5» определяет баланс между скоростью и степенью сжатия.
- autodefrag — автоматически дефрагментирует часто изменяемые файлы (журналы, базы данных, кеши).
После редактирования сохраните файл и перезагрузите систему.
Рекомендуемые параметры для HDD
Для обычных жёстких дисков лучше подходят другие настройки:
noatime,space_cache=v2,compress=zstd:3,autodefrag,commit=60
Объяснение:
- noatime — уменьшает количество операций записи.
- compress=zstd:3 — слабее сжатие, зато быстрее на медленных дисках.
- autodefrag — помогает бороться с фрагментацией.
- commit=60 — записывает изменения на диск каждые 60 секунд, уменьшая нагрузку на головки HDD.
Проверка включённого сжатия
Чтобы убедиться, что сжатие действительно активно, выполните:
sudo btrfs property get / compression
Если в выводе отображается строка вроде:
compression=zstd
— значит сжатие включено.
Принудительное сжатие уже существующих файлов
Если система установлена давно, старые файлы могли быть записаны без сжатия. Можно «сжать» их заново:
sudo btrfs filesystem defragment -r -v -czstd /
Разбор параметров:
- -r — обрабатывать рекурсивно (все вложенные каталоги);
- -v — выводить процесс выполнения;
- -c zstd — применить алгоритм сжатия zstd.
Настройка TRIM
TRIM сообщает SSD, какие блоки можно освободить. Чтобы система делала это автоматически, включите таймер:
sudo systemctl enable --now fstrim.timer
Проверить состояние таймера можно командой:
systemctl status fstrim.timer
TRIM помогает поддерживать скорость записи и продлевает жизнь накопителю.
Балансировка BTRFS
BTRFS хранит данные блоками (чанками). Со временем часть блоков может заполниться неравномерно, и это снижает скорость работы. Чтобы перераспределить данные, используется команда балансировки:
sudo btrfs balance start -dusage=50 -musage=50 /
Расшифровка:
- -dusage=50 — перераспределить только те блоки данных, что заполнены менее чем на 50 %;
- -musage=50 — то же самое для метаданных;
- / — путь к корневому подтома.
Балансировку стоит запускать примерно раз в 1–2 месяца.
Проверка использования диска
Чтобы узнать, как используется место, введите:
sudo btrfs filesystem df /
Команда показывает, сколько места занято данными, метаданными и системной информацией. Полезна для оценки того, нужна ли балансировка.
btrfs-assistant
Это удобное графическое приложение для управления файловыми системами BTRFS. Оно позволяет выполнять большинство задач по оптимизации и обслуживанию без командной строки.
Возможности
- Просмотр подтомов (subvolumes) и их свойств.
- Управление снимками (создание, удаление, откат системы).
- Запуск проверки и балансировки разделов.
- Настройка сжатия и других параметров монтирования.
- Интеграция с Timeshift и Snapper (если они установлены).
Установка
В ROSA Linux и других дистрибутивах установить можно через DNF:
sudo dnf in btrfs-assistant
Использование
После установки запустить утилиту можно через меню системы:
btrfs-assistant
или из терминала, если используется графическая среда.
При запуске откроется главное окно, где отображаются все BTRFS-разделы и подтомы. Далее можно:
- Создавать и удалять подтомы;
- Выполнять балансировку одним кликом;
- Настраивать автоматическое обслуживание (scrub и defrag);
- Создавать снимки вручную или планировать их по расписанию.
Преимущества перед ручными командами
- Безопасность — все операции проверяются перед применением.
- Простота — подходит даже тем, кто не знаком с командной строкой.
- Наглядность — состояние диска, свободное место и параметры видны в реальном времени.
Пример сценария:
- Откройте btrfs-assistant.
- Выберите раздел, например /dev/sda2.
- Нажмите Balance → Start для балансировки.
- При необходимости создайте снимок системы через Snapshots → Create.
- Наблюдайте за выполнением операций прямо в окне программы.
Таким образом, btrfs-assistant дополняет классические инструменты командной строки, упрощая настройку и оптимизацию системы для пользователей, которые предпочитают графический интерфейс.
Итоги
После выполнения оптимизации:
- система работает быстрее, особенно при чтении и установке пакетов;
- SSD меньше изнашивается благодаря сокращению ненужных записей;
- файлы занимают меньше места за счёт сжатия;
- BTRFS становится более стабильной и отзывчивой.
| ← Назад: Введение и разметка | Вперёд: Обслуживание → |