Ошибки systemd, диска и памяти на сервере: как найти причину
Служба не запускается, диск заполнен, программы падают без объяснений — у каждой из этих бед есть своё сообщение. Найдите слова из своего в таблице: для каждой ошибки есть разбор по шагам.
Содержание 7
Найдите свою ошибку
Сравните своё сообщение с левой колонкой: достаточно, чтобы совпали слова из неё.
| Слова в сообщении | Что случилось | Что делать |
|---|---|---|
No space left on device | Диск заполнен | Разбор |
No space left on device, а df -h показывает свободное место | Кончились записи для новых файлов — inodes | Разбор |
Read-only file system | Диск или папка открыты только для чтения | Разбор |
Job for … failed because … | Служба не запустилась | Разбор |
start of the service was attempted too often или Start request repeated too quickly | Служба падала несколько раз подряд, и systemd перестал её запускать | Разбор |
Unit … not found, could not be found или does not exist | Службы с таким именем нет | Разбор |
Unit … is masked | Служба отключена полностью | Разбор |
changed on disk. Run 'systemctl daemon-reload' | Файл службы изменён, systemd об этом ещё не знает | Разбор |
System has not been booted with systemd | Команда запущена там, где systemd не работает: WSL, контейнер | Разбор |
Out of memory: Killed process или программа пропала без ошибки | Кончилась память, и система остановила программу | Разбор |
Cannot allocate memory | Программе не хватило памяти | Разбор |
Что такое systemd
systemd — программа, которая запускает и останавливает службы на сервере: веб-сервер nginx, базу данных MySQL, PHP и другие. Ей вы отдаёте команды systemctl start, systemctl restart, systemctl status. Когда служба не запускается, systemd пишет короткую ошибку, а подробности — в журнал.
Три команды для первой проверки
Команды на этой странице вводятся на сервере: подключитесь к нему по SSH (как подключиться) и набирайте их в том же окне. Сначала узнайте, сколько свободно места на диске:
df -h /Колонка Use% — сколько занято. Если там 100%, начните со страницы No space left on device.
Затем — сколько свободно памяти:
free -hСтрока Mem — оперативная память, Swap — подкачка на диске. Колонка available показывает, сколько памяти ещё могут взять программы. Если там близко к нулю, загляните на страницу Out of memory.
И последнее — какие службы упали:
systemctl --failedКоманда выводит список служб в состоянии failed. Если список пустой, все службы работают. Если нет — посмотрите, почему упала нужная:
sudo systemctl status myappВ примерах служба называется myapp — подставьте имя своей: nginx, mysql, php8.3-fpm и так далее. Если система спросит пароль, введите пароль своего пользователя на сервере. Символы при вводе не видны — так и должно быть: наберите пароль и нажмите Enter. Чтобы вернуться к вводу команд после systemctl status, нажмите клавишу Q.
Где искать подробности
Сама ошибка systemctl — только заголовок. Причину служба пишет в журнал. Последние 50 строк журнала службы покажет команда:
sudo journalctl -u myapp -n 50 --no-pagerИщите строки со словами error, failed, denied, not found — ближе к концу вывода. Как читать журнал, рассказано на странице Job for … failed.
Если сайт на обычном хостинге
На обычном хостинге доступа к systemd и к диску сервера нет — этим занимается хостер. Если ошибку показывает сайт на хостинге, напишите в его поддержку.
Тексты сообщений сверены с исходным кодом systemd 255 — эта версия стоит в Ubuntu 24.04. В других версиях systemd слова могут немного отличаться.
Источники
- Исходный код systemd 255: bus-wait-for-jobs.c — тексты Job for … failed и пояснения к ним.
- Исходный код systemd 255: dbus-unit.c — тексты Unit … not found и Unit … is masked.
- Исходный код systemd 255: unit.c — тексты Start request repeated too quickly и Failed with result.
- Исходный код systemd 255: bus-util.c — тексты System has not been booted with systemd и Failed to connect to bus.
- Исходный код ядра Linux 6.8: oom_kill.c — текст Out of memory: Killed process.
- Исходный код glibc 2.39: errlist.h — тексты системных ошибок: No space left on device, Read-only file system, Cannot allocate memory.
- Справка systemctl(1) в Ubuntu 24.04 — команды status и --failed.
- Справка free(1) в Ubuntu 24.04 — вывод free -h.
- Справка df(1) в Ubuntu 24.04 — параметры -h и -i.
- Пакет systemd в Ubuntu 24.04 — версия systemd в Ubuntu.
Сверено 10 октября 2026 года.
Что почитать дальше
Проверено и обновлено: 10.10.2026