// 08 из 08
Полезные команды
8.1 Диагностика загрузки
# Общее время загрузки системы systemd-analyze # Какой сервис тормозит больше всего systemd-analyze blame # Граф зависимостей (создаёт SVG) systemd-analyze plot > boot.svg # Логи текущей загрузки journalctl -b # Логи предыдущей загрузки journalctl -b -1 # Сообщения ядра при загрузке dmesg | head -50 # Список всех активных сервисов systemctl list-units --type=service
8.2 Управление сервисами
systemctl start nginx # запустить сервис systemctl stop nginx # остановить сервис systemctl restart nginx # перезапустить сервис systemctl reload nginx # перечитать конфиг (без перезапуска) systemctl enable nginx # добавить в автозапуск systemctl disable nginx # убрать из автозапуска systemctl status nginx # статус сервиса systemctl is-active nginx # активен ли сервис? systemctl is-enabled nginx # включён ли автозапуск?
8.3 Информация о системе
uname -r # версия ядра uname -a # полная информация cat /proc/version # версия ядра подробно cat /proc/cmdline # параметры загрузки ядра lsblk # список дисков и разделов lsblk -f # + файловые системы и UUID df -h # использование дисков free -h # использование памяти uptime # время работы системы
8.4 Работа с GRUB
# Обновить конфиг GRUB после изменений sudo update-grub # Установить GRUB на диск sudo grub-install /dev/sda # Просмотр текущих параметров загрузки cat /proc/cmdline
8.5 Работа с initramfs
# Просмотр содержимого lsinitramfs /boot/initramfs-$(uname -r).img # Пересоздать initramfs sudo update-initramfs -u # Размер файла ls -lh /boot/initramfs-$(uname -r).img
8.6 Дерево зависимостей systemd
# Зависимости для graphical.target systemctl list-dependencies graphical.target # Что зависит от конкретного сервиса systemctl list-dependencies --reverse nginx.service # Просмотр unit-файла systemctl cat nginx.service
8.7 Журналы
journalctl -b # текущая загрузка journalctl -b -1 # прошлая загрузка journalctl -u sshd # логи конкретного сервиса journalctl -p err # только ошибки journalctl -p warning # предупреждения и выше journalctl -f # в реальном времени (tail -f) journalctl --since "2024-01-01" --until "2024-01-02" journalctl --disk-usage # размер журнала на диске
// Курс завершён
Вы изучили полный цикл загрузки Linux: от Reset Vector и POST через GRUB2 и ядро,
через initramfs и switch_root до systemd, Display Manager и пользовательской сессии.
Используйте команды из этого раздела для диагностики и понимания вашей системы.