systemd-journald를 사용하여 저널 복제를 비활성화하는 방법

systemd-journald를 사용하여 저널 복제를 비활성화하는 방법

방금 데비안 불스아이로 라즈베리 파이를 설치했는데 , 및 와 같은 텍스트 /var/log형식의 기존 로그 파일이 모두 중복된 것 같아서 텍스트 파일만 사용하고 싶지 않습니다.kern.logdaemon.logsyslogjournaljournalctljournalctl

기존 방식을 비활성화하고 로그 항목이 누락되지 않도록 하려면 어떻게 해야 합니까? 즉, journalctl모든 것이 포함되어 있습니까?

이것은 목록입니다 /var/log. 텍스트 파일과 디렉터리가 있는지 확인하세요 journal .

total 960
-rw-r--r--  1 root root              3137 Jul  6 17:51 alternatives.log
drwxr-xr-x  2 root root              4096 Jul  6 18:02 apt
-rw-r-----  1 root adm              12453 Jul  6 18:02 auth.log
-rw-r--r--  1 root root                 0 Apr  4 16:41 bootstrap.log
-rw-rw----  1 root utmp              1600 Jul  6 17:27 btmp
-rw-r-----  1 root adm             131074 Jul  6 18:03 daemon.log
-rw-r-----  1 root adm               4356 Jul  6 17:42 debug
-rw-r--r--  1 root root            109320 Jul  6 18:02 dpkg.log
-rw-r--r--  1 root root                 0 Apr  4 16:41 faillog
-rw-r--r--  1 root root               484 Jul  6 17:51 fontconfig.log
drwxr-sr-x+ 3 root systemd-journal   4096 Apr  4 16:41 journal
-rw-r-----  1 root adm             169704 Jul  6 18:03 kern.log
-rw-rw-r--  1 root utmp            296296 Jul  6 17:54 lastlog
-rw-r-----  1 root adm             168196 Jul  6 18:03 messages
drwx------  2 root root              4096 Apr  4 16:41 private
drwxr-xr-x  3 root root              4096 Apr  4 16:28 runit
-rw-r-----  1 root adm             305804 Jul  6 18:03 syslog
-rw-r-----  1 root adm               1413 Jul  6 17:42 user.log
-rw-rw-r--  1 root utmp             12000 Jul  6 17:54 wtmp

답변1

좋은 의견 Artem, 정말 감사합니다. 같은 주제에 대한 이전 기사에 대한 링크도 좋은 설명입니다. 그런 다음 제거했는데 rsyslog로그 중복 없이 모든 것이 여전히 잘 작동합니다.

위에서 언급했듯이, 내 동기는 log2ram로그 작성으로 인한 SD 카드의 마모를 줄이기 위해 Raspberry Pi에서 이를 사용하는 것입니다. 그러나 메모리 파일 시스템이 계속 채워지고 있습니다.

삭제하면 최대 로그 크기를 예측할 수 있으므로 rsyslog사용이 크게 단순화됩니다 . log2ram다음과 같이 최대 크기를 20MB로 설정할 수 있습니다.sudo perl -pe 's/^#?SystemMaxUse=.*$/SystemMaxUse=20M/g' -i /etc/systemd/journald.conf

추가 로그 파일이 기록되지 않고 journald최대 크기가 보장되므로 logrotate더 이상 구성이 필요하지 않습니다. 또한 형식이 바이너리이기 zram때문에 압축은 더 이상 사용되지 않습니다 . journald좋고 쉽습니다.

이것이 누군가에게 도움이 되기를 바랍니다.

답변2

rsyslog를 완전히 삭제할 필요는 없습니다. 예를 들어 중복된 로그 메시지를 피하고 싶지만 여전히 스크립트에서 로거를 사용하여 사용자 정의 로그 항목을 작성할 수 있습니다.

ForwardToSyslog=yessystemd-journald에서 rsyslog로의 로그 전달을 끄려면 로그 구성에서 행을 변경하는 것으로 충분합니다. openSUSE Leap 15.4를 실행하는 내 시스템에서는 이 내용이 없지만 /etc/systemd/journald.conf사용자 /usr/lib/systemd/journald.conf.d/30-rsyslog.conf의 시스템은 다를 수 있습니다.

이 값을 no로 변경하고 systemd-journald 서비스를 다시 시작한 후에는 로그 전달을 꺼야 합니다. 이는 /var/log/messages를 보면 쉽게 확인할 수 있습니다.

관련 정보