#Что означает ошибка
bad unit file setting
Опечатка в секции, ключе или значении. Проверьте systemd-analyze verify и перезагрузите конфигурацию systemctl daemon-reload.
#Причины и признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Опечатка | В случае «systemd: Unit file has a bad setting — ошибка в unit-файле» проверьте наличие причины «Опечатка» по исходному действию и связанному сообщению; переходить к исправлению стоит после её подтверждения. | Исправьте. Конкретное действие зависит от проверки причины «Опечатка», описанной в пошаговой инструкции. |
| Нет daemon-reload | В случае «systemd: Unit file has a bad setting — ошибка в unit-файле» проверьте наличие причины «Нет daemon-reload» по исходному действию и связанному сообщению; переходить к исправлению стоит после её подтверждения. | Выполните. Конкретное действие зависит от проверки причины «Нет daemon-reload», описанной в пошаговой инструкции. |
| Неверный путь ExecStart | В случае «systemd: Unit file has a bad setting — ошибка в unit-файле» проверьте наличие причины «Неверный путь ExecStart» по исходному действию и связанному сообщению; переходить к исправлению стоит после её подтверждения. | Укажите. Конкретное действие зависит от проверки причины «Неверный путь ExecStart», описанной в пошаговой инструкции. |
| Неверная секция | В случае «systemd: Unit file has a bad setting — ошибка в unit-файле» проверьте наличие причины «Неверная секция» по исходному действию и связанному сообщению; переходить к исправлению стоит после её подтверждения. | Исправьте. Конкретное действие зависит от проверки причины «Неверная секция», описанной в пошаговой инструкции. |
#Пошаговое решение
- Определите причинуВыполните
systemctl status имя.service -lиsudo journalctl -u имя.service -b -n 50 --no-pager, запишите точное сообщениеUnit file has a bad settingи название неизвестного параметра. Часто это опечатка или директива, не поддерживаемая установленной версией systemd. - Выполните подходящее исправлениеПроверьте
systemctl cat имя.serviceсо всеми подключёнными drop-in-файлами. Найдите строку, указанную в предупреждении, и сопоставьте правильный раздел[Unit],[Service]или[Install]по документации вашей версииman systemd.service. Не копируйте директивы из руководства для более новой ОС вслепую. - Проверьте другие возможные причиныПеред редактированием сохраните исходный unit/override, затем исправьте только ошибочный параметр через
sudo systemctl edit имя.serviceили управляемый пакетный конфиг. Запуститеsystemd-analyze verify /путь/к/unitдля проверки; помните, что команда показывает и предупреждения зависимых unit. - Убедитесь в результатеПосле успешной проверки выполните
sudo systemctl daemon-reload, затемsudo systemctl restart имя.serviceв согласованное окно либоstart, если служба была остановлена. Проверьте статус и отсутствие новых предупреждений; при ухудшении верните прежнюю копию.
#Если проблема осталась
Если «systemd: Unit file has a bad setting — ошибка в unit-файле» повторяется, сохраните время, состояние подключения и точный текст ошибки. Не меняйте сразу несколько настроек — иначе станет трудно понять, какое действие повлияло на результат.