systemdサービスに問題があります。スクリプトの状態は常に「アクティブ」ではなく「アクティブ」です。何が問題なのかよく分からない。この問題を解決するのに役立ちます。
30秒ごとにbashスクリプトを実行するsystemdサービスを作成しました。
My script :
#!/bin/bash
PGPORT=$1
echo "running through bash script thourgh systemd working `date`" >> //tmp/diditwork.txt
マイシステムサービスの設定
[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」を追加すると、スクリプトは最初に実行され、その後の間隔では再実行されません。
私のエラーと解決策を指摘してください。
ありがとうございます。