systemd-journal-flush 서비스를 비활성화하고 나중에 수동으로 Journalctl --flush를 실행할 수 있습니까?

systemd-journal-flush 서비스를 비활성화하고 나중에 수동으로 Journalctl --flush를 실행할 수 있습니까?

내 Archlinux 설치에서 systemd-journal-flush 서비스를 통해 저널 로그를 디스크에 플러시하면 부팅 프로세스가 상당히 길어지고 해당 서비스를 비활성화하면 부팅 시간이 단축될 수 있다는 것을 깨달았습니다. 서비스를 영구적으로 차단하고 journalctl --flush컴퓨터가 유휴 상태일 때 이를 실행하여 로그를 디스크에 플러시할 수 있습니까? 이로 인해 바람직하지 않은 시스템 동작이 발생합니까?

답변1

이 문제를 해결하는 단계는 다음과 같습니다.

  1. 플러싱을 수행하다journalctl --flush
  2. 디렉토리 삭제/이동/var/log/journal
  3. 설정 Storage=auto하다/etc/systemd/journald.conf
  4. 기계를 다시 시작하세요

시작 시간이 개선되는 것을 볼 수 있습니다.

답변2

다른 사람들은 영구 로그 없이 로깅을 실행하는 것이 옵션이라고 지적했습니다. 이 메소드는 특별한 주의사항 없이 기록됩니다.그리고다수의 시스템에서 사용됩니다. Fedora는 영구 로그 및 syslog 데몬 없이 시작되었으며 데비안은 여전히 ​​기본적으로 이 접근 방식을 사용합니다.

따라서 문제를 기대할 이유가 없습니다.

원하는 경우 원래 서비스를 마스킹하고 플러시가 나중에 실행되도록 예약할 수 있습니다.

나중에 시작하는 동안 이상한 시스템 충돌이 발생하면 이를 다시 활성화하여(그리고 SyncIntervalSec=Journald.conf에서 더 낮은 값을 설정하여) 관련 로그 메시지를 복구해 볼 수 있습니다.

답변3

/etc/systemd/journald.conf디스크 가 있는 경우 Storage=auto디스크에 기록되도록 설정할 수 있습니다 . /var/log/journal디렉터리를 만들지 마세요.

그런 다음 유휴 상태일 때 명령을 실행하는 메서드를 사용하여 로그 디스크를 플러시할 수 있습니다.

sudo mkdir /var/log/journal && journalctl --flush

관련 정보