시스템 로그 파일을 직접 검사하는 방법은 무엇입니까?

시스템 로그 파일을 직접 검사하는 방법은 무엇입니까?

내 아치 리눅스가 장치에서 실패합니다. 장치에 화면이 없고 네트워크에 응답하지 않습니다. 그래서 SD 카드를 우분투 데스크탑에 삽입하고 새로운 system.journal을 보았습니다. 그리고... 그 안에 무엇이 있는지 어떻게 알 수 있습니까?

Arch Linux 문서를 보면 다음과 같이 할 수 있다는 것을 알고 있습니다.

 strings /mnt/arch/var/log/journal/.../system.journal | grep -i message

그러나 그것은 정말 기본적인 것입니다. 문제는 다음과 같습니다

다음을 사용하는 것보다 다른 시스템에서 system.journal을 확인하는 더 편리한 방법이 있습니까?? 예를 들어, 읽을 파일을 지정할 수 있나요?로그 제어?

답변1

첫째, 사용 기능은 strings로그가 작은 필드(현재 구현에서 64KiB 미만)를 압축하지 않는다는 우연의 일치에서 비롯됩니다. 이것은 저널을 읽는 데 지원되는 방법이 아니며 실제로 Archwiki에서 그렇게 표시되어야 합니다. 이것은 최후의 도랑 복구 방법에 가깝습니다.

이제 질문에 대답해 보세요. ~에서로그 제어(1):

-D 디렉터리, --디렉토리=디렉터리

디렉터리 경로를 인수로 사용합니다. 지정된 경우 Journalctl은 기본 런타임 및 시스템 로그 경로 대신 지정된 로그 디렉터리 DIR에서 작동합니다.

따라서 손상된 시스템의 rootfs가 마운트되었다고 가정하고 시스템 로그를 확인하기 위해 $DEST이용하시기 바랍니다 .journalctl -D $DEST/var/log/journal

완전성을 위해: 특정 파일을 보려면 journalctl --file예를 들어 journalctl --file /var/log/journal/$(cat /etc/machine-id)/system.journal. 그러나 로그 파일은 정기적으로 교체되므로 사용량에 따라 이 양식을 사용하여 전체 로그를 확인하지 못할 수도 있습니다.

관련 정보