我遇到了 systemd 服务的问题,脚本的状态始终处于“激活状态”而不是“活动”。我不确定是什么问题。请帮我解决这个问题。
我创建了 systemd 服务,它将每 30 秒执行一个 bash 脚本
My script :
#!/bin/bash
PGPORT=$1
echo "running through bash script thourgh systemd working `date`" >> //tmp/diditwork.txt
我的systemd服务配置
[root@pglinux02 system]# cat /etc/systemd/system/test-pg.service
[Unit]
Description=PostgreSQL db Service
After=network.target
[Service]
User=postgres
Type=simple
ExecStart=/tmp/test.sh 5432
Restart=always
RestartSec=30
[Install]
WantedBy=multi-user.target
[root@pglinux02 system]#
我的脚本正在按预期执行,但是当我检查服务的状态时,它始终显示“正在激活”状态
[root@pglinux02 system]# systemctl status test-pg.service
● test-pg.service - PostgreSQL db Service
Loaded: loaded (/etc/systemd/system/test-pg.service; enabled; vendor preset: disabled)
Active: **activating (auto-restart)** since Fri 2021-10-29 19:49:57 GMT; 6s ago
Process: 5274 ExecStart=/tmp/test.sh 5432 (code=exited, status=0/SUCCESS)
Main PID: 5274 (code=exited, status=0/SUCCESS)
[root@pglinux02 system]#
使该服务“活动(运行)”的方法是什么?如果添加另一个参数“RemainAfterExit=yes”,则脚本第一次运行,并且在后续间隔中不再运行
请指出我的错误以及解决方案
谢谢杜尔加