발행 할 때 journalctl
모든 시스템 서비스에 대한 방대한 로그를 얻지 만이 모든 정보는 어디에 저장됩니까?
발행 할 때 journalctl
모든 시스템 서비스에 대한 방대한 로그를 얻지 만이 모든 정보는 어디에 저장됩니까?
답변:
보낸 사람 man systemd-journald
:
FILES
/etc/systemd/journald.conf
Configure systemd-journald behavior. See journald.conf(5).
/run/log/journal/machine-id/*.journal,
/run/log/journal/machine-id/*.journal~,
/var/log/journal/machine-id/*.journal,
/var/log/journal/machine-id/*.journal~
systemd-journald writes entries to files in
/run/log/journal/machine-id/ or /var/log/journal/machine-id/ with
the ".journal" suffix. If the daemon is stopped uncleanly, or if
the files are found to be corrupted, they are renamed using the
".journal~" suffix, and systemd-journald starts writing to a new
file. /run is used when /var/log/journal is not available, or when
Storage=volatile is set in the journald.conf(5) configuration file.
그리고 man journalctl
말합니다 :
journalctl may be used to query the contents of the systemd(1) journal
as written by systemd-journald.service(8).
이 로그는 systemd-journald
서비스에 의해 관리 되므로보다 적절한 용어는 " journald
로그"입니다.
그러나 우분투는 기본적으로 영구 저널 로그 파일을 사용하지 않습니다. /run/log/journal/<machine-id>/*.journal[~]
다음 부팅 때까지 휘발성 만 유지됩니다. 재부팅 할 때마다 모두 손실됩니다.
다음과 같이 로그에 유지 된 부팅 목록이 표시 될 수 있습니다.
journalctl --list-boot
디렉토리 /var/log
를 작성하여 지속적 저널 로그 사용을 활성화하지 않은 경우 로그는 여전히 텍스트 파일 아래에 유지됩니다 /var/log/journal
.
일반적으로 스토리지 디렉토리는 /var/log/journal
또는 /run/log/journal
이지만 반드시 시스템에 존재할 필요는 없습니다.
저널이 현재 디스크에서 차지하는 공간을 확인하려면 다음을 입력하십시오.
$ journalctl --disk-usage
스토리지 디렉토리는 저널 구성에 따라 다릅니다.
구성 파일은 다음과 같습니다.
/etc/systemd/journald.conf
/etc/systemd/journald.conf.d/*.conf
/run/systemd/journald.conf.d/*.conf
/usr/lib/systemd/journald.conf.d/*.conf
" Storage=
"옵션은 저널 데이터를 저장할지 여부와 위치를 제어합니다. 가능한 값은 " volatile
", " persistent
", " auto
"및 " none
"입니다. 기본값은 " auto
"입니다.
" volatile
"인 경우 저널 로그 데이터는 메모리에만 저장됩니다 (예 : / run / log / journal 계층 구조 (필요한 경우 작성 됨)).
" persistent
"인 경우 데이터는 디스크에, 바람직하게는 / var / log / journal 계층 구조 (필요한 경우 생성됨) 아래에, 초기에는 / run / log / journal (필요한 경우 생성됨)로 대체됩니다. 디스크를 쓸 수없는 경우 부팅합니다.
" auto
"는 " "와 비슷 persistent
하지만 필요한 경우 디렉토리 /var/log/journal
가 작성 되지 않으므로 로그 데이터의 존재를 제어합니다.
" none
"는 모든 스토리지를 끄고 수신 된 모든 로그 데이터가 삭제됩니다.
데이터가 저장된 위치에 대한 Muru의 답변 외에도 다른 관련 답변이 있습니다.
journalctl
이전 부팅 로그를 찾기 위해 늘리는 방법$ sudo mkdir -p /var/log/journal
$ sudo systemd-tmpfiles --create --prefix /var/log/journal
journalctl
아래 파일 크기를$ journalctl --vacuum-size=200M
Deleted archived journal /var/log/journal/d7b25a27fe064cadb75a2f2f6ca7764e/system@00056515dbdd9a4e-a6fe2ec77e516045.journal~ (56.0M).
Deleted archived journal /var/log/journal/d7b25a27fe064cadb75a2f2f6ca7764e/user-65534@00056515dbfe731d-b7bab56cb4efcbf6.journal~ (8.0M).
Deleted archived journal /var/log/journal/d7b25a27fe064cadb75a2f2f6ca7764e/user-1000@1bbb77599cf14c65a18af51646751696-000000000000064f-00056444d58433e1.journal (112.0M).
Vacuuming done, freed 176.0M of archived journals on disk.