오류 메시지가 나타납니다. 내 이메일로 자동 전송됩니다.
/etc/cron.daily/logrotate:
error: error opening /var/log/apache2/access.log.1.gz: No such file or directory
error: error opening /var/log/apache2/myhost/access.log.1.gz: No such file or directory
나는 또한 내 디렉토리 /var/log/apache2/*
와 /var/log/apache2/myhost/*
해당 디렉토리를 확인합니다. 해당 파일은 없지만 access.log.1.gz
디렉터리에 파일이 있어야 합니다. access.log.1
나는 방금 내 로그 파일을 관리하기 위해 이 도구를 구성하기 시작했습니다 logrotate
. 내 Apache는 오랫동안 실행되어 왔으며 내 디렉토리에 최소 30개 이상의 로그 파일이 있습니다. 현재로서는 왜 이런 일이 발생하는지 전혀 모르겠습니다.
내 /etc/logrotate
것은 다음과 같습니다 :
/var/log/apache2/*.log {
daily
missingok
rotate 10
compress
delaycompress
# notifempty
create 640 root adm
sharedscripts
postrotate
/etc/init.d/apache2 reload > /dev/null;
endscript
prerotate
if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
run-parts /etc/logrotate.d/httpd-prerotate; \
fi; \
endscript
}
/var/log/apache2/myhost/*.log {
daily
missingok
rotate 10
compress
delaycompress
# notifempty
create 640 root adm
sharedscripts
postrotate
/etc/init.d/apache2 reload > /dev/null; \
endscript
prerotate
if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
run-parts /etc/logrotate.d/httpd-prerotate; \
fi; \
endscript
}
답변1
나는 그것을 고쳤다. 내 새 구성은 두 곳에서 변경되었습니다. 이제 /var/log/apache2/myhost/는 별도의 "access.log.1" 및 "error.log.1" 없이 아래와 같습니다.
내 /etc/logrotate.d의 구성은 다음과 같습니다. 별표를 제거하고 구체적으로 이름을 지정했습니다. 그렇지 않으면 "delaycompress" 지시어에 주석을 달겠습니다.
/var/log/apache2/myhost/access.log /var/log/apache2/myhost/error.log { daily missingok rotate 2 compress # delaycompress # notifempty create 640 root adm sharedscripts postrotate /etc/init.d/apache2 reload > /dev/null; \ endscript }
여기에 /etc/logrotate.conf 파일을 추가했습니다. 나는 또한 "압축"에 대해 언급했습니다. 그런 다음 "sudo logrotate -f /etc/logrotate.d/apache2"를 실행합니다. 이는 이 실행을 강제로 수행함을 의미합니다. 결과는 훌륭합니다. 다들 감사 해요.
# see "man logrotate" for details # rotate log files weekly weekly
# keep 4 weeks worth of backlogs
rotate 4
# create new (empty) log files after rotating old ones
create
# uncomment this if you want your log files compressed
compress
# packages drop log rotation information into this directory
include /etc/logrotate.d
# no packages own wtmp, or btmp -- we'll rotate them here
/var/log/wtmp {
missingok
monthly
create 0664 root utmp
rotate 1
}
/var/log/btmp {
missingok
monthly
create 0660 root utmp
rotate 1
}
# system-specific logs may be configured here
</code>