Решение проблемы медленной загрузки Linux менее чем за 5 минут

03.06.2025
Как решить проблему медленной загрузки Linux менее чем за 5 минут

Ваша система Linux загружается слишком долго? Медленный запуск может отнимать у вас время и испытывать ваше терпение. Хорошая новость заключается в том, что в Linux есть встроенные инструменты, которые помогут вам найти и устранить проблемы с медленной загрузкой.

В этой простой статье вы узнаете, как использовать команду systemd-analyze для поиска служб, замедляющих работу вашей системы. Как только вы узнаете, что именно замедляет работу, вы сможете безопасно отключить ненужные службы, чтобы ускорить процесс загрузки Linux.

В следующих разделах вы узнаете:

  • Что такое systemd-анализ,
  • Проверьте время загрузки вашего Linux,
  • Выясните, какие сервисы замедляют работу.
  • Безопасное отключение ненужных служб,
  • Ускорьте запуск вашего компьютера с Linux.

 

Никаких продвинутых навыков не требуется. Просто следуйте этим простым шагам, чтобы сократить время запуска Linux менее чем за 5 минут!

 

Почему моя Linux-система так медленно загружается?

В современных системах systemd (менеджер системы и служб) в Linux запускает все процессы при загрузке компьютера. Он запускает множество небольших программ, называемых службами. Некоторые из них завершают работу быстро, другим требуется больше времени.

Вот несколько распространённых причин, по которым ваша система Linux загружается медленно:

  • Слишком много служб запускается при загрузке (например, Bluetooth, принтеры, VPN).
  • Задержки в работе сети (ожидание подключения к интернету). Некоторые сервисы ожидают подключения к сети, прежде чем продолжить работу.
  • Медленное оборудование (старые жесткие диски, мало оперативной памяти).

 

Это лишь некоторые из того, что приходит мне на ум. Конечно, существует множество причин (как программных, так и аппаратных), которые могут вызывать замедление запуска.

Мы сосредоточимся на устранении замедлений, связанных с программным обеспечением, с помощью systemd-analyze, инструмента, встроенного в большинство систем Linux.

 

Что такое systemd-analyze?

systemd-analyze — это инструмент командной строки, который помогает оценить производительность загрузки вашей системы. Он работает с systemd, программным обеспечением, которое управляет запуском системы, службами и завершением работы. Этот инструмент показывает, сколько времени занимают различные этапы процесса загрузки, и может помочь выявить задержки.

Она включает в себя несколько подкоманд. В этом руководстве мы рассмотрим использование следующих подкоманд:

  • timeПоказывает общее время загрузки и время, затраченное на работу встроенного ПО, загрузчика, ядра и пользовательского пространства.
  • blame: Перечисляет сервисы в порядке убывания времени, затраченного на их запуск.
  • critical-chain: Показывает, какие службы задержали другие.
  • plot: Создает визуальную диаграмму процесса загрузки в формате SVG (полезно для более детального изучения).

 

Шаг 1. Проверьте время загрузки

Загрузка Linux осуществляется в три ключевых этапа:

  1. Фаза прошивки (BIOS/UEFI)
  2. Инициализация ядра
  3. Запуск пользовательского пространства (где происходит большинство задержек)

 

Выполните эту команду, чтобы увидеть, сколько времени ушло на каждый этап:

systemd-analyze time

 

Вы увидите что-то вроде этого:

Startup finished in 17.855s (firmware) + 7.320s (loader) + 4.004s (kernel) + 12.167s (userspace) = 41.347s 
graphical.target reached after 12.153s in userspace.

 

  • Время ядра = время, необходимое для настройки оборудования (обычно быстро)
  • Время пользовательского пространства = время загрузки приложений и сервисов (где происходят замедления)

 

Если ваше время в пользовательском пространстве превышает 10 секунд, вы, скорее всего, можете его ускорить.

 

Шаг 2. Найдите самые медленные сервисы

Команда systemd-analyze blame показывает, сколько времени занимает запуск каждой службы. Это поможет вам определить, какие из них замедляют работу.

Выполните эту команду, чтобы узнать, какие службы занимают больше всего времени:

systemd-analyze blame

 

Эта команда покажет, сколько времени потребовалось для запуска каждой службы.

Пример вывода (сначала самые медленные службы):

4.316s NetworkManager-wait-online.service
1.629s fwupd.service
1.612s networking.service
1.609s systemd-modules-load.service
1.174s ifupdown2-pre.service
1.164s systemd-udev-settle.service
 669ms postfix@-.service
 661ms dev-nvme0n1p2.device
...

 

Как вы можете видеть на выходе, более длинные цепочки находятся в верхней части.

Внимательно проверьте каждый сервис. Если вы не знаете, что делает конкретный сервис, просто выполните быстрый поиск в интернете, чтобы узнать о его назначении. Если вы считаете, что какой-то сервис вам не нужен, вы можете его отключить.

 

Глубокий Анализ

Вы также можете использовать команду systemd-analyze critical-chain для отображения того, какие службы задерживают другие службы:

systemd-analyze critical-chain

 

Это поможет вам найти сервисы, которые блокируют запуск других сервисов.

Если вы хотите создать наглядную временную шкалу для процесса загрузки Linux, выполните следующие действия:

systemd-analyze plot > boot.svg

 

Для базового анализа просто запустите blame и выявите очевидные замедления. Для глубокого анализа используйте critical-chain или plot.

 

Отобразить Десятку самых медленных сервисов

По умолчанию команда systemd-analyze будет отображать результаты по страницам. Вы можете перемещаться по результатам, нажимая клавишу ENTER.

Если вы хотите отобразить определённое количество служб, вы можете передать результат в команду head. Например, чтобы отобразить десять самых медленных служб, выполните:

systemd-analyze blame | head -n 10

 

Шаг 3. Отключите ненужные службы, чтобы устранить проблемы с медленной загрузкой Linux

Вы нашли службы, которые вызывают медленную загрузку Linux. Что теперь? Вы можете либо отключить, либо оптимизировать эти проблемные службы.

Некоторые службы (например, NetworkManager-wait-online) ожидают подключения к Интернету до завершения загрузки. Если вам это не нужно, просто отключите эту функцию с помощью команды:

systemd-analyze blame | head -n 10

 

Если вы не используете Bluetooth, вы можете отключить его:

sudo systemctl disable NetworkManager-wait-online.service

 

Другие распространенные службы, которые вы можете отключить:

  • cups.service (если вы не пользуетесь принтерами)
  • snapd.service (если вы не используете приложения Snap)

 

Отключайте службы только в том случае, если вы знаете, что они не нужны.

 

Предупреждение: не отключайте критически важные службы, такие как dbussystemd-logind, или network-manager.

 

Шаг 4: Проверьте Свои улучшения

После внесения изменений перезагрузите компьютер и запустите:

systemd-analyze time
systemd-analyze blame

 

Сравните время загрузки с предыдущим. Вы должны заметить заметное ускорение!

 

Бонус: ещё несколько способов ускорить загрузку Linux

  1. Используйте SSD (если вы все еще используете жесткий диск)
  2. Сократите количество запускаемых приложений (установите флажок Startup Applications в настройках рабочего стола)
  3. Попробуйте более лёгкую версию Linux (например, Lubuntu вместо Ubuntu).

 

Выводы

Команда systemd-analyze blame — это простой способ узнать, почему ваша система Linux медленно загружается. С помощью этой команды вы можете легко найти и устранить проблемы с медленной загрузкой в Linux. Для большинства пользователей отключение всего 1–2 ненужных служб сокращает время загрузки вдвое.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Редактор: AndreyEx

Рейтинг: 5 (1 голос)
Если статья понравилась, то поделитесь ей в социальных сетях:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Это может быть вам интересно


Загрузка...

Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала