現象
19.1'den 19.2'ye yükseltme
- Avamar
19.1'den 19.2'ye yükseltme işleminden sonra /var/log/messages konumunda log rotasyonu hataları görünüyor.
admin@avamar:~/>: grep -i "logrotate.service" /var/log/messages Feb 1 00:00:01 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE Feb 1 00:00:01 avamar systemd[1]: logrotate.service: Unit entered failed state. Feb 1 00:00:01 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'. Feb 2 00:00:03 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE Feb 2 00:00:03 avamar systemd[1]: logrotate.service: Unit entered failed state. Feb 2 00:00:03 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'. Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Unit entered failed state. Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'.
- Reading through (/var/log/messages), these errors are triggered after it fails to find file: /etc/init.d/apache2 to run prerotate in the logrotate.d for apache2
Feb 2 16:30:02 avamar logrotate: ALERT exited abnormally with [1] Feb 2 16:30:02 avamar logrotate: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory Feb 2 16:30:02 avamar logrotate: error: error running non-shared prerotate script for /var/log/apache2/access_log of '/var/log/apache2/access_log ' Feb 2 16:30:02 avamar logrotate: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory Feb 2 16:30:02 avamar logrotate: error: error running non-shared prerotate script for /var/log/apache2/ssl_request_log of '/var/log/apache2/ssl_request_log ' Feb 3 00:00:01 avamar logrotate[14221]: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory Feb 3 00:00:01 avamar logrotate[14221]: error: error running non-shared prerotate script for /var/log/apache2/access_log of '/var/log/apache2/access_log ' Feb 3 00:00:01 avamar logrotate[14221]: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory Feb 3 00:00:01 avamar logrotate[14221]: error: error running non-shared prerotate script for /var/log/apache2/ssl_request_log of '/var/log/apache2/ssl_request_log ' Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Unit entered failed state. Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'.
- Avamar sunucusu SLES 12 SP 4 ile 19.2 sürümünü çalıştırıyor:
admin@avamar:~/>: cat /etc/*release* SUSE Linux Enterprise Server 12 (x86_64) VERSION = 12 PATCHLEVEL = 4 # This file is deprecated and will be removed in a future service pack or release. # Please check /etc/os-release for details about this release. NAME="SLES" VERSION="12-SP4" VERSION_ID="12.4" PRETTY_NAME="SUSE Linux Enterprise Server 12 SP4" ID="sles" ANSI_COLOR="0;32" CPE_NAME="cpe:/o:suse:sles:12:sp4"
- Running the command manually, to check for directory: /etc/init.d/apache2 fails with "No such file or directory".
admin@avamar:~/>: ls -ltrh /etc/init.d/apache2 ls: cannot access '/etc/init.d/apache2': No such file or directory
原因
Apache2'nin, SLES 12'de bulunmayan init.d dosyaları için log rotasyonuna neden olan yazılım hatası.
SLES 11'de init.d hizmeti kullanılıyordu ancak SLES 12'de systemctl hizmeti kullanılıyor.
解決方法
Geçici Çözüm:
1. Yönetici Kullanıcı olarak yardımcı yazılım düğümünde veya tek düğümlü sistemde oturum açın ve kök kullanıcı olun.
2. Mevcut logrotate dosyasını ayırın
mv /etc/logrotate.d/apache2 /tmp
3. Dosyayı vi kullanarak yeniden oluşturun
vi/etc/logrotate.d/apache2
4. Şu satırları Notepad veya Notepad++ benzeri bir metin düzenleyicisine kopyalayın (özel karakterleri de dahil edeceğinden lütfen Word veya Wordpad kullanmayın)
/var/log/apache2/access_log /var/log/apache2/ssl_request_log {
compress
dateext
maxage 365
rotate 99
size=+4096k
notifempty
missingok
create 640 wwwrun www
sharedscripts
postrotate
systemctl reload apache2.service
sleep 60
endscript
}
/var/log/apache2/error_log /var/log/apache2/suexec.log /var/log/apache2/ssl_engine_log /var/log/apache2/deflate.log {
compress
dateext
maxage 365
rotate 99
size=+1024k
notifempty
missingok
create 640 wwwrun www
sharedscripts
postrotate
systemctl reload apache2.service
sleep 60
endscript
}
5. Düzenleyicideki metni Avamar düğümünde yeni oluşturulan dosyaya yapıştırın
6. Değişiklikleri kaydedin
7. Dosya üzerinde doğru izinleri ayarlayın
chmod 644/etc/logrotate.d/apache2
8. Log rotasyonunu kök kullanıcı olarak test edin.
logrotate -f /etc/logrotate.conf
Kalıcı çözüm: Bu sorun sonraki Avamar sürümünde düzeltilecektir: 19.3.
対象製品
Avamar
製品
Avamar, Avamar Server