현재 systemd-journald 실행 구성을 얻는 방법은 무엇입니까?

현재 systemd-journald 실행 구성을 얻는 방법은 무엇입니까?

journald질문과 비슷한 현재 구성을 얻고 싶습니다 .systemd의 런타임 전역 구성을 보는 방법은 무엇입니까?

어떻게 해야 하나요?

특히 로그 회전에 사용 가능한 매개변수 중 일부를 설정했는데 로그가 다른 값을 따르는 것 같습니다. 현재 로그 보존을 제한하는 것이 무엇인지 더 잘 이해하기 SystemMaxUse위해 모든 매개변수( 등)의 현재 값을 보고 싶습니다 . SystemMaxFileSize현재는 시작 시 로그에 표시되는 메시지만 있습니다.

System journal [...] is 5.8G, max 12.0G, 6.1G free.

답변1

내 생각에 당신이 찾고 있는 것은 입니다 systemd-analyze cat-config systemd/journald.conf. systemd-journald에서 사용되는 현재 활성 구성이 표시됩니다.

답변2

중간 지점에 도달하려면 다음을 실행하세요.

journalctl -u systemd-journald -o json-pretty

json-pretty 출력 포맷터는 로그 메시지와 관련된 모든 필드를 표시합니다. SystemMaxUse를 나타내는 MAX_USE_PRETTY 및 MAX_USE 필드가 있습니다. 패치도 할 수 있어요서버 공간 사용량 메시지.

답변3

귀하의 질문을 올바르게 이해하길 바랍니다. 로깅 구성에 대한 매뉴얼 페이지에서 찾은 내용은 다음과 같습니다.로그.conf(5)

디렉터리 및 우선순위 구성

    기본 구성은 컴파일 중에 정의되므로 이러한 기본값에서 벗어나야 하는 경우에만 구성 파일이 필요합니다. 기본적으로 구성 파일에는 /etc/systemd/ 관리자를 위한 지침으로 기본값을 표시하는 주석 처리된 항목이 포함되어 있습니다. 이 파일을 편집하여 로컬 재정의를 만들 수 있습니다.

이는 언급된 구성 파일에 이미 모든 기본값이 있음을 의미합니다. 그러나 일부 옵션, 특히 최대 크기와 관련하여 찾고 있는 옵션은 채워지지 않았습니다.

"지속적"과 "자동/런타임" 저장 모드에는 차이가 있습니다.

제가 찾은 내용은 다음과 같습니다.

SystemMaxUse=,,,,,,,,,,,  SystemKeepFree=SystemMaxFileSize=SystemMaxFiles=RuntimeMaxUse=RuntimeKeepFree=RuntimeMaxFileSize=RuntimeMaxFiles=

    저장된 로그 파일에 크기 제한을 적용합니다. "system" 접두사가 붙은 옵션은 영구 파일 시스템, 특히 /var/log/journal. "런타임"이라는 접두사가 붙은 옵션은 휘발성 메모리 파일 시스템, 특히 /run/log/journal. 전자는 /var디렉토리가 마운트되고 쓰기 가능하며 /var/log/journal존재하는 경우에만 사용됩니다. 그렇지 않으면 후자만 적용됩니다. 즉, 초기 부팅 중에 관리자가 영구 로깅을 비활성화하면 후자 옵션만 적용되고, 영구 로깅이 활성화되고 시스템이 완전히 부팅되면 전자 옵션이 적용됩니다. …

다음은 다음과 같습니다.

    첫 번째 쌍의 기본값은 해당 파일 시스템 크기의 10%이고 두 번째 쌍의 기본값은 15%이지만 각 값은 4G로 제한됩니다. 파일 시스템이 거의 가득 찼 SystemKeepFree=거나 systemd-journald를 시작할 때 위반된 경우 RuntimeKeepFree=제한은 실제 여유 공간의 백분율로 증가됩니다. …

Journald.conf의 매뉴얼 페이지는 계속해서 이러한 설정을 설명하므로 시스템에 실제로 존재하는 매뉴얼 페이지를 확인하면 이것이 실행 중인 버전에 가장 적합하고 최신 버전일 것이라고 생각합니다.

로그 회전과 관련하여 logrotate-service가 아닌 logrotate에 대해 묻는다고 가정합니까? 전자도 매뉴얼 페이지에 있으며 "진공 청소"라고 불리는 반면, 후자는 다른 서비스입니다.

Systemd는 동일한 목적을 달성하기 위해 cron 작업을 통해 이전 로그 회전을 "타이머" 서비스로 대체할 수 있는 가능성을 제공합니다. 타이머는 다음과 같이 찾을 수 있으며 sudo systemctl list-timers --all --no-pager일반적인 "sytemctl 활성화" 명령 등을 사용하여 활성화할 수 있습니다.

관련 정보