Ubuntu
CentOS 8 的等效 logrotate 腳本應該是什麼
我的 Ubuntu 伺服器上有一些日誌文件的 logrotate 腳本。腳本如下。
/home/*/logs/*log { su root root notifempty daily rotate 7 compress sharedscripts postrotate if [ -f "`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`" ]; then /etc/init.d/apache2 reload > /dev/null fi endscript }
現在我想在我的 CentOS 8 伺服器中實現相同的腳本。在這裡我無法理解線條的價值是什麼
if [ -f "`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`" ]; then /etc/init.d/apache2 reload > /dev/null fi
我建議您使用基本 CentOS
httpd
軟體包在其httpd.logrotate中使用的內容:/var/log/httpd/*log { missingok notifempty sharedscripts delaycompress postrotate /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true endscript }
(另外,我建議您不要使用 /home 作為儲存網站的地方。我想除非您關閉 SELinux,否則幾乎所有內容都會中斷?這就是原因。除此之外,您的配方將為碰巧擁有的每個使用者壓縮日誌一個帶有日誌目錄的主目錄。我想如果你只有網站使用者……)