Lubuntu 20.04 上的 Java Shutdown 挂钩

Lubuntu 20.04 上的 Java Shutdown 挂钩

Java在关闭运行 Lubuntu 20.04.1 的 PC 时,我使用以下 systemd 服务正常关闭程序。脚本会/usr/local/bin/pre-shutdown搜索所有正在运行的Java程序并终止它们。

[Unit]
Description=Kills some programs that prevent proper (fast) shutdown
Requires=sddm.service
After=sddm.service

[Service]
Type=oneshot
RemainAfterExit=true
ExecStop=/usr/local/bin/pre-shutdown

[Install]
WantedBy=sddm.service

sddm使用脚本停止服务时,systemctl stop sddm会找到程序并将其终止(所有已注册的关机挂钩都会运行)。但如果我使用shutdown nowreboot其他某个进程关闭 PC,则似乎会在脚本运行之前终止 Java 程序(没有运行关机挂钩),因为它找不到任何正在运行的Java程序。

我需要在服务定义中进行哪些更改才能使脚本在Java程序被终止之前运行,即使在系统关闭时(而不仅仅是 sddm 停止)。

在 Lubuntu 14.04 上我们遇到了同样的问题,并能够通过使用pre-stop脚本停止程序来解决它etc/init/lightdm.conf,但不幸的是只有 支持upstart

相关内容