Шпаргалка по systemctl: Управление службами в Linux
systemd - это система инициализации и управления службами в Linux. Основная утилита для взаимодействия с ней - systemctl. С её помощью мы запускаем веб-серверы, базы данных, ботов и настраиваем их автозагрузку.
Примечание.
systemd - это центральный механизм, который отвечает за запуск Linux после включения компьютера и за управление всеми службами (демонами), работающими в системе.
Когда Linux загружается, именно systemd:
• запускает сетевые службы
• поднимает базы данных
• стартует веб‑серверы
• следит за зависимостями
• перезапускает упавшие процессы
• управляет логами
Чтобы взаимодействовать с systemd, используется команда systemctl - это как "пульт управления" всеми службами.
В командах ниже замените name на имя вашей службы (например, nginx, docker, postgresql или my-bot).
1. Управление состоянием (прямо сейчас)
Базовые команды для включения и выключения.
| Команда | Описание |
|---|---|
systemctl start name | Запустить службу. |
systemctl stop name | Остановить службу. |
systemctl restart name | Перезапустить (Stop + Start). Используется, если служба зависла или нужно применить серьезные изменения. |
systemctl reload name | Перечитать конфигурацию без остановки. Идеально для веб-серверов (Nginx/Apache) при правке конфигов. |
systemctl status name | Показать статус. Самая важная команда: показывает, запущена ли служба, последние логи и ошибки. |
Примечание.
Не обязательно писать
.serviceв конце имени (например, можно писатьsudo systemctl start nginxвместоnginx.service).
2. Автозагрузка (при включении ПК)
Эти команды определяют, будет ли служба стартовать сама после перезагрузки сервера.
| Команда | Описание |
|---|---|
systemctl enable name | Включить автозагрузку. Создает симлинк в системе. |
systemctl disable name | Выключить автозагрузку. Служба не запустится сама после ребута. |
systemctl enable --now name | Киллер-фича: Включает автозагрузку И сразу запускает службу. (2 команды в одной). |
systemctl is-enabled name | Проверить, включена ли автозагрузка сейчас. |
Диагностика и поиск проблем
Если что-то сломалось, эти команды помогут понять, где именно.
systemctl --failedПоказать список всех служб, которые упали с ошибкой. С этого стоит начинать починку системы.systemctl list-units --type=serviceПоказать вообще все активные службы в системе.

