systemctl status active:退出与运行

Hik*_*ari 5 services systemd

抱歉这个菜鸟问题,我搜索了它但没有找到解释。

\n

我无法理解 systemctl 状态的active (exited)不同active (running)。以下是我的服务器上的 2 个示例:

\n
$systemctl status pihole-FTL.service\n\xe2\x97\x8f pihole-FTL.service - LSB: pihole-FTL daemon\n     Loaded: loaded (/etc/init.d/pihole-FTL; generated)\n     Active: active (exited) since Thu 2020-12-31 12:21:34 -03; 1h 13min ago\n       Docs: man:systemd-sysv-generator(8)\n      Tasks: 0 (limit: 38279)\n     Memory: 0B\n     CGroup: /system.slice/pihole-FTL.service\n\ndez 31 12:21:34 server systemd[1]: Starting LSB: pihole-FTL daemon...\ndez 31 12:21:34 server pihole-FTL[81286]: Not running\ndez 31 12:21:34 server su[81306]: (to pihole) root on none\ndez 31 12:21:34 server su[81306]: pam_unix(su:session): session opened for user pihole by (uid=0)\ndez 31 12:21:34 server su[81306]: pam_unix(su:session): session closed for user pihole\ndez 31 12:21:34 server systemd[1]: Started LSB: pihole-FTL daemon.\n\n\n\n$systemctl status apache2.service\n\xe2\x97\x8f apache2.service - The Apache HTTP Server\n     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)\n     Active: active (running) since Thu 2020-12-31 11:55:36 -03; 1h 40min ago\n       Docs: https://httpd.apache.org/docs/2.4/\n   Main PID: 35401 (apache2)\n      Tasks: 11 (limit: 38279)\n     Memory: 36.7M\n     CGroup: /system.slice/apache2.service\n             \xe2\x94\x9c\xe2\x94\x80 35401 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 35402 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 35404 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 35405 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 35406 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 38219 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 38221 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 82281 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80 82286 /usr/sbin/apache2 -k start\n             \xe2\x94\x9c\xe2\x94\x80148242 /usr/sbin/apache2 -k start\n             \xe2\x94\x94\xe2\x94\x80188358 /usr/sbin/apache2 -k start\n\ndez 31 11:55:36 server systemd[1]: Started The Apache HTTP Server.\ndez 31 11:56:57 server sudo[38106]: www-data : TTY=unknown ; PWD=/stuff/www/html/admin ; USER=root ; COMMAND=/usr/local/bin/pihole status web\ndez 31 11:56:57 server sudo[38106]: pam_unix(sudo:session): session opened for user root by (uid=0)\ndez 31 11:56:57 server sudo[38106]: pam_unix(sudo:session): session closed for user root\ndez 31 11:57:00 server sudo[38216]: www-data : TTY=unknown ; PWD=/stuff/www/html/admin ; USER=root ; COMMAND=/usr/local/bin/pihole status web\ndez 31 11:57:00 server sudo[38216]: pam_unix(sudo:session): session opened for user root by (uid=0)\ndez 31 11:57:00 server sudo[38216]: pam_unix(sudo:session): session closed for user root\ndez 31 12:22:01 server sudo[82205]: www-data : TTY=unknown ; PWD=/stuff/www/html/admin ; USER=root ; COMMAND=/usr/local/bin/pihole status web\ndez 31 12:22:01 server sudo[82205]: pam_unix(sudo:session): session opened for user root by (uid=0)\n
Run Code Online (Sandbox Code Playgroud)\n

我测试了一下,两个守护进程都运行正常,为什么pihole会退出呢?

\n

use*_*733 6

pi-hole 作业不是 systemd 监控的 .service。

它只是启动守护进程的脚本。这是一种非常 2005 年的做事方式(systemd 在 2010 年之前并不存在)

  • 线索如下:pi-hole 作业位于/etc/init.d/,这是放置 sysvinit 脚本的标准位置。它不位于/lib/systemd/system//etc/systemd/system/,这是 systemd .service 文件的标准位置。

Systemd 不知道脚本正在启动守护进程。它只知道脚本成功退出。

你的pi-hole启动方法没有任何问题。新旧方式可以和平共处。它仅仅意味着您没有使用 systemd 功能(例如监控和重生)。或者,您最喜欢的搜索引擎会很乐意向您展示基于 systemd .service 的启动 pi-hole 的方法。