증상
최근 사용중인 vps에 systemctl status … 명령실행하면 거의 20초정도 걸려야 실행결과가 나왔습니다.
원인분석 결과 jounal로그파일 크기가 3G정도 차지하여 검색하는데 시간이 엄청 걸리는걸로 확인 되였습니다. systemd-journal로그 서비스는 커널의 로그, 초기 시스템 시작 단계, 시작 및 실행 중 시스템 데몬의 표준 출력 및 오류 메시지, syslog에서 로그를 수집하는 향상된 로그 관리 서비스입니다. 여러가지 로그를 수집하므로 부피가 엄청 늘어날수 있습니다.
jounal 로그파일크기 확인방법
journalctl --disk-usage
journal 로그 파일크기 자동유지 하는 방법
1) 지난주 로그만 보관
journalctl --vacuum-time=1w
2) 500MB의 로그만 유지
journalctl --vacuum-size=500M
문제와 분석
journalctl 명령이 실행될 때 오류가 보고됩니다. journal 파일을 여는 동안 오류가 발생했습니다: 입/출력 오류
# journalctl --vacuum-time=1w >Error was encountered while opening journal files: Input/output error
- 원인 분석: 로그 파일 손상
- 해결 방법: 이전 로그를 삭제하고 journalctl 서비스를 다시 시작하십시오.
rm -rf /var/log/journal/*
systemctl restart systemd-journald.service
그런 다음 journalctl 명령을 실행하여 로그파일크기를 제한합니다.
# journalctl --vacuum-time=1w Vacuuming done, freed 0B of archived journals on disk.# journalctl --vacuum-size=500MVacuuming done, freed 0B of archived journals on d