나는 서비스 상태 확인을 사용합니다 systemctl status service-name
.
기본적으로 몇 줄만 보여서 -n50
더 많은 줄을 보고 싶어서 추가했습니다.
때로는 전체 로그를 처음부터 보고 싶을 때가 있습니다. 수천 개의 줄이 있을 수 있습니다.
지금 확인해 -n10000
보니 별로 좋은 해결책은 아닌 것 같습니다.
전체 시스템 서비스 로그를 확인하는 명령과 유사한 옵션이 있습니까 less
?
답변1
journalctl
다음과 같은 명령을 사용하면 됩니다 .
journalctl -u service-name.service
또는 현재 시작에 대한 로그 메시지만 봅니다.
journalctl -u service-name.service -b
이라는 이름의 경우 <something>.service
실제로 <something>
다음과 같이 을 사용할 수 있습니다.
journalctl -u service-name
그러나 다른 유형의 단위(소켓, 대상, 타이머 등)에 대해서는 명시적이어야 합니다.
위 명령에서 flags는 관심 있는 단위 -u
의 약어 이며 해당 단위의 이름을 지정합니다. 의 약어 이며 출력을 현재 시작으로만 제한하므로 이전 메시지가 많이 표시되지 않습니다. 보다--unit
-b
--boot
Journalctl 매뉴얼 페이지더 많은 정보를 알고 싶습니다.
답변2
systemctl
-l
다음 플래그를 추가하면 상태 목록의 전체 출력을 잘림 없이 포함할 수 있습니다.
systemctl -l status service-name
-l
: 줄임표(...)가 있는 항목을 자르지 않습니다.
--no-pager
출력이 대화형 터미널일 때 호출기를 호출하지 않도록 추가할 수 있습니다.
답변3
journalctl
시스템 로그를 보는 데 사용됩니다 .︙
journalctl
페이징 없이 보기로그를 표준 출력으로 보내고 페이징을 방지하려면 다음
--no-pager
옵션을 사용하십시오.journalctl --no-pager
표시된 로그 수를 먼저 필터링하지 않고 이 작업을 수행하는 것은 권장되지 않습니다.
journalctl -u service-name.service
︙
특정 시간 범위 내의 로그 표시
--since
지정된 날짜 및 시간 이후의 로그를 표시하려면 이 옵션을 사용하십시오 .journalctl --since "2018-08-30 14:10:10"
--until
지정된 날짜 및 시간까지의 로그를 표시하려면 이 옵션을 사용합니다 .journalctl --until "2018-09-02 12:05:50"
두 번 사이의 로그를 표시하려면 다음을 결합하십시오.
journalctl --since "2018-08-30 14:10:10" --until "2018-09-02 12:05:50"
위 내용의 대부분은 다음의 내용을 표절한 것입니다.Journalctl을 사용하여 시스템 로그 보기Linode 문서에서. 거기에 더 많은 정보가 있습니다.
답변4
를 사용하여 journalctl
로그를 텍스트 파일에 쓴 다음 아래에서 위로 읽습니다.
journalctl -u service-name.service > file_name.txt &&\
tail file_name.txt