Avem nevoie de repornirea unui serviciu frecvent în anumite scenarii speciale.
Deci, atunci când eșuează cu start-limit, soluția sugerată este să apelați „reset-failed”.
Ceea ce am descoperit este că, chiar și după apelarea reset-failed, pornirea imediată ulterioară eșuează cu limita de pornire. Singura soluție este să introduceți o pauză de 6 secunde (sleep 6) înainte de a începe apelul, dacă precedentul a eșuat.
În scopul testării, am făcut o exagerare de apelare, resetarea eșuată, înainte de fiecare pornire. Totuși, eșuează cu limita de pornire.
admin@vlab-03:~/tmp$ cat t.py
#! /usr/bin/env python3
import os
import sys
def _service_restart(svc_name):
rc_stop = os.system(f"sudo systemctl stop {svc_name}")
rc_reset = os.system(f"sudo systemctl reset-failed {svc_name}")
rc_start = os.system(f"sudo systemctl start {svc_name}")
print(f"rc_stop={rc_stop} rc_reset={rc_reset} rc_start={rc_start}")
dacă rc_start != 0:
print("Se iese...")
sys.exit(-1)
def main():
pentru i în interval (10):
print(f"-------------------i = {i} ---------------")
_service_restart("rsyslog-config")
print("terminat")
if __name__ == "__main__":
principal()
admin@vlab-03:~/tmp$
o/p:
admin@vlab-03:~/tmp$ ./t.py
-------------------i = 0 ---------------
rc_stop=0 rc_reset=0 rc_start=0
-------------------i = 1 ---------------
rc_stop=0 rc_reset=0 rc_start=0
-------------------i = 2 ---------------
rc_stop=0 rc_reset=0 rc_start=0
-------------------i = 3 ---------------
rc_stop=0 rc_reset=0 rc_start=0
-------------------i = 4 ---------------
rc_stop=0 rc_reset=0 rc_start=0
-------------------i = 5 ---------------
Lucrarea pentru rsyslog-config.service a eșuat deoarece procesul de control a ieșit cu cod de eroare.
Consultați „systemctl status rsyslog-config.service” și „journalctl -xe” pentru detalii.
rc_stop=0 rc_reset=0 rc_start=256
Se ies...
Orice sfaturi ar fi de mare ajutor.
admin@vlab-03:~$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
admin@vlab-03:~$ uname -a
Linux vlab-03 5.10.0-8-2-amd64 #1 SMP Debian 5.10.46-4 (2021-08-03) x86_64 GNU/Linux