Ошибки

Warning: The unit file … changed on disk. Run systemctl daemon-reload

Файл службы изменился, а systemd продолжает работать со старой версией. Выполните sudo systemctl daemon-reload и перезапустите службу — изменения вступят в силу.

Обновлено 10.10.2026≈ 3 мин чтения
Содержание 7

Как выглядит предупреждение

Warning: The unit file, source configuration file or drop-ins of myapp.service changed on disk. Run 'systemctl daemon-reload' to reload units.

«Файл службы, его исходные настройки или дополнения к нему изменились на диске. Выполните systemctl daemon-reload, чтобы перечитать их». systemctl пишет это при командах start, restart, status и других. В примерах служба называется myapp — подставьте имя своей: nginx, mysql, php8.3-fpm и так далее.

Почему так

systemd читает файлы служб при запуске сервера и держит их в памяти. Если вы поправили файл службы в редакторе, на диске уже новая версия, а systemd помнит старую. Предупреждение об этом и напоминает.

Это не ошибка: служба продолжает работать как раньше. Но ваши изменения не вступят в силу, пока systemd их не перечитает.

Как исправить

Команды на этой странице вводятся на сервере: подключитесь к нему по SSH (как подключиться) и набирайте их в том же окне. Перечитайте настройки всех служб:

sudo systemctl daemon-reload

Если система спросит пароль, введите пароль своего пользователя на сервере. Символы при вводе не видны — так и должно быть: наберите пароль и нажмите Enter. Команда ничего не отвечает — так и должно быть. Она перечитывает файлы, но саму службу не перезапускает. Чтобы служба заработала с новыми настройками, перезапустите её:

sudo systemctl restart myapp

Как проверить

sudo systemctl status myapp

Предупреждения больше нет, в строке Active: — active (running). Чтобы вернуться к вводу команд после systemctl status, нажмите клавишу Q.

Если служба после перезапуска не работает, ошибка в новых настройках. Как её найти, рассказано на странице Job for … failed.

Где лежат файлы служб

  • /usr/lib/systemd/system/ — файлы из пакетов. Их не правят: при обновлении пакета изменения пропадут.
  • /etc/systemd/system/ — ваши службы и ваши изменения. Файлы здесь важнее файлов из пакетов.
  • /etc/systemd/system/myapp.service.d/ — дополнения к службе. Такую папку создаёт команда sudo systemctl edit myapp.

Какие файлы служба использует сейчас, покажет команда systemctl cat myapp: в начале каждого куска — путь к файлу.

Удобнее всего менять настройки службы командой sudo systemctl edit myapp: она сохраняет изменения отдельно от файла пакета и сама выполняет daemon-reload.

Тексты сообщений сверены с исходным кодом systemd 255 — эта версия стоит в Ubuntu 24.04. В других версиях systemd слова могут немного отличаться.

Источники

Сверено 10 октября 2026 года.

Что почитать дальше

Проверено и обновлено: 10.10.2026