Systemctl 状态显示成功,但服务处于非活动状态

Systemctl status shows Succeeded, but service is inactive

我有这个简单的 /etc/systemd/system/test.service 文件

[Unit]
Description=SkriptA
After=network.target auditd.service

[Service]
Type=simple
ExecStart=/opt/test.sh

[Install]
WantedBy=multi-user.target

当我运行 systemctl start test.service然后systemctl status test.service显示serivce成功但是不活跃,请问这是为什么?

● test1.service - SkriptA
   Loaded: loaded (/etc/systemd/system/test1.service; disabled; vendor preset: enabled)
   Active: inactive (dead)

Mar 05 12:17:55 hro0078 systemd[1]: Started SkriptA.
Mar 05 12:17:55 hro0078 systemd[1]: test1.service: Succeeded.

ExecStart 脚本就像服务一样简单

#!/usr/bin/bash

echo Hi > /tmp/test1
date >> /tmp/test1

我使用:Linux version 4.19.0-13-amd64 (debian-kernel@lists.debian.org) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP Debian 4.19.160-2 (2020-11-28)

你的程序启动成功,直接终止。

要获得您的服务 active,需要保留 运行。示例:

#!/usr/bin/bash

while [ 1 ]; do
    echo Hi > /tmp/test1
    date >> /tmp/test1
    sleep 60
done