В man systemd.kill
есть следующее объяснение параметра KillMode
:
KillMode =
Определяет, как процессы этого модуля должны быть остановлены. Одна из контрольной группы, процесс, смешанный, нет.
Если установлено значение control-group, все оставшиеся процессы в группе управления этого устройства будут прекращены при остановке устройства (для служб: после выполнения команды остановки, как настроено с помощью
ExecStop =
).
Подразумевается, что настроенный ExecStop
сам по себе не поможет, но:
Если задано значение process , уничтожается только сам основной процесс.
Если установлено значение нет , ни один процесс не завершается.В этом случае при остановке агрегата будет выполняться только команда остановки,
Итак, ExecStop
можно использовать вместе с KillMode = none
. Это было бы необходимо, если бы демон запускал постоянные процессы, чтобы нацелить их, но не остановку
. В моем случае это не так, а сам демон имеет обработчик SIGTERM
и не ожидает дочерних элементов, поэтому не требует специальной очистки. Следовательно, добавление KillMode = process
в блок [Service]
решило проблему; демон останавливается, оставляя halt
для завершения, и система завершает работу, как обычно, через несколько секунд.
Нет, раздел смонтирован как ext3; просто файловые системы ext3 в настоящее время обрабатываются драйвером ext4 с сообщением, которое вы видите, когда они монтируются . Раньше был отдельный драйвер ext3, но от него отказались , когда драйвер ext4 показал себя надежным. Драйвер ext4 проверяет, что файловые системы, смонтированные как ext3, используют только функции ext3, чтобы они оставались совместимыми со старым драйвером ext3.