systemctl status는 어떻게 잘못된 Active 값을 표시합니까?

systemctl status는 어떻게 잘못된 Active 값을 표시합니까?

Centos 8 운영 체제를 사용하고 있습니다. 부팅 시 Tomcat을 시작하는 서비스가 있습니다. 그리고 업데이트 후 버그가 보고되었는데, Tomcat이 아직 시작되지 않았습니다(시스템이 다시 시작되었습니다). 결과

systemctl status {service.name}

예전에는

Loaded: loaded (/etc/systemd/system/{service.name}; enabled; vendor preset: disabled)
Active: active (running) since Sat 2021-10-02 18:42:21 EEST; 2 weeks 3 days ago

여기서 문제는 2주 3일 전, 다시 시작한 직후에 "활성"으로 표시된다는 것입니다. 이 문제는 서비스를 다시 시작하면 쉽게 해결할 수 있습니다.

그러나 나는 아직도 그것을 재현할 수 없고 그것이 어떻게 가능한지 이해할 수 없습니다.

/var/log/journal수동으로 폴더를 생성하고 이전 및 이후 로그를 표시하여 journalctl -u {service.name} 시스템 로그의 영구 저장을 활성화하려고 시도했지만 -- Reboot -- 결과는 다음과 같습니다.

systemctl status {service.name}

서비스가 마지막으로 시작된 이후의 시간을 계속 계산합니다.

Active: active (running)그렇다면 무엇이 오래되고 잘못된 상태를 표시 할 수 있는지 아는 사람이 있습니까 ? (서비스가 잘못된 시간과 활동 상태를 표시해서는 안 되기 때문입니다.) 감사해요

게다가 마지막 서비스 시작 시간이 systemctl status {service.name}2주 전이어서 전체 로그가 오래된 것으로 보입니다.

업데이트 서비스

[Unit]
Description=Start tomcat service
After=network-online.target snmpd.service
Wants=network-online.target
Conflicts=tomcat-debug.service

[Service]
ExecStart=/opt/infrascale/stark-scripts/tomcat-start.sh
ExecStop=/opt/infrascale/stark-scripts/tomcat-stop.sh
StandardOutput=journal
StandardError=journal
Restart=always
Type=forking

[Install]
WantedBy=multi-user.target

현재 재부팅하기 전에 사람의 실수로 서비스 상태를 가져오는 중이거나 커널을 4.18에서 5.14로 업데이트한 후 systemd에 일부 문제가 있을 수 있는 것으로 보입니다.

관련 정보