Один из частых вопросов: почему система грузится так долго? Для раскрытия этой тайны можно использовать встроенный инструмент
systemd-analyze, который покажет подробную статистику загрузки и поможет найти узкие места.▪️ Базовый анализ времени загрузки. Простейшая команда:
systemd-analyze
Пример вывода:
Startup finished in 2.351s (kernel) + 8.512s (userspace) = 10.863s
kernel - время работы ядра до запуска systemd
userspace - запуск сервисов и инициализация systemd
итоговое время загрузки
▪️ Кто тормоз? Чтобы узнать, какие юниты грузились дольше всего:
systemd-analyze blame
Вывод отсортирован по времени запуска. На первых строках будут виновники торжества.
▪️ Граф зависимостей. Для наглядности можно построить диаграмму загрузки:
systemd-analyze critical-chain
Она покажет цепочку сервисов, которые напрямую влияют на общее время старта.
Для детального графа в SVG:
systemd-analyze plot > boot.svg
Файл можно открыть в браузере - это визуализация всех юнитов и их зависимостей.
▪️ Оптимизация
1️⃣ Отключить ненужные сервисы
systemctl disable bluetooth.service
systemctl disable cups.service
2️⃣ Использовать systemd-analyze blame для точечной оптимизации
Например, если дольше всего грузится NetworkManager-wait-online.service, можно сократить или отключить ожидание сети.
3️⃣ Параллелизация загрузки. systemd умеет запускать независимые сервисы параллельно, поэтому полезно проверять зависимости в systemd-analyze critical-chain.
4️⃣ Использовать mask для блокировки ненужных юнитов
systemctl mask service_name
#systemd #boot
🧑💻 NetworkAdmin