![중지/비활성화된 애플리케이션의 로그 회전 건너뛰기](https://linux55.com/image/100756/%EC%A4%91%EC%A7%80%2F%EB%B9%84%ED%99%9C%EC%84%B1%ED%99%94%EB%90%9C%20%EC%95%A0%ED%94%8C%EB%A6%AC%EC%BC%80%EC%9D%B4%EC%85%98%EC%9D%98%20%EB%A1%9C%EA%B7%B8%20%ED%9A%8C%EC%A0%84%20%EA%B1%B4%EB%84%88%EB%9B%B0%EA%B8%B0.png)
Raspberry Pi 2에 GNU/Linux를 실행하는 백업 시스템이 있습니다. 여러 가지 이유로 특정 응용 프로그램을 중지 및/또는 비활성화해야 합니다. Samba, httpd와 같이 다시 시작해야 하는 중지된 응용 프로그램에 대해 logrotate를 건너뛰는 방법:
다음과 같은 오류가 이메일로 전송되었습니다.
/etc/cron.daily/logrotate:
Job for smbd.service failed. See 'systemctl status smbd.service' and 'journalctl -xn' for details.
error: error running non-shared postrotate script for /var/log/samba/log.smbd of '/var/log/samba/log.smbd '
run-parts: /etc/cron.daily/logrotate exited with return code 1
smbd 및/또는 nmbd가 실행되지 않는 경우 회전을 건너뛰는 postrotate/endscript 방법이 있습니까?
답변1
logrotate 구성 파일(또는 특정 /etc/logrotate.d
하위 파일)에는 다음과 같은 섹션이 있어야 합니다.
/var/log/samba/log.smbd {
...
postrotate
/etc/init.d/smbd reload > /dev/null
endscript
...
}
후회전 명령을 다음으로 변경합니다.
/var/log/samba/log.smbd {
...
postrotate
{ pidof smbd && /etc/init.d/smbd reload; } > /dev/null
endscript
...
}