rsyslogd를 사용하여 수동으로 로그 파일 회전


10

을 사용하여 로그 파일 회전을 강제하고 싶지만 logrotate -f /var/log/syslog반환 톤은 다음과 같습니다.

error: syslog:1 unknown option 'May' -- ignoring line
error: syslog:1 unexpected text

이 시스템에서 rsyslogd가 실행되고 있음을 알고 있습니다. 회전하는 방법 /var/log/syslog? 비워두고 싶습니다.

답변:


23

logrotate명령 행에서 어떤 파일을 회전시킬 것인지 말하지 않습니다 . 구성 파일을 전달합니다. 따라서 귀하의 경우, 파일을 logrotate읽고 /var/log/syslog구성 파일로 구문 분석하고 실패합니다 (따라서 오류).

회전 /var/log/syslog시키 려면 logrotate어딘가에 구성 파일에 나열되어 있어야 합니다 logrotate. 최근에 회전 한 경우 다시 회전 logrotate -f하도록합니다.

다음 /var/log/syslog은 데비안 의 예제 항목입니다 .

/var/log/syslog
{
        rotate 7
        daily
        missingok
        notifempty
        delaycompress
        compress
        postrotate
                invoke-rc.d rsyslog reload > /dev/null
        endscript
}

따라서 파일에서 일반적으로 /etc/logrotate.conf또는 포인트 를 /etc/logrotate.d가정 할 때 파일 스 니펫 으로 파일을 필요 로 /etc/logrotate.conf합니다 logrotate /etc/logrotate.conf.

데비안을 실행하고 있기 때문에이 작업이 모두 완료된 것입니다. 실제로해야 할 일은 실행하는 것입니다 logrotate -f /etc/logrotate.conf(이것은 현재 logrotate로 구성된 모든 로그 를 회전시킵니다 ).

당신이 경우 진정으로 만 회전 할 /var/log/syslog, 당신은 단지 않는 설정 파일을 작성해야합니다 그 내용에 따라 하나의 로그, /etc/logrotate.conf+ /etc/logrotate.d/rsyslog.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.