Centos Web Panel (CWP) clamd veya amavis CPU %100 sorunu çözümü

2
5166

Centos Web Panel (CWP) clamd veya amavis CPU %100 sorunu çözümü

Son zamanlarda VPS hizmetimde kurulu olan CWP 7 içerisinde çalışan amavis servisinin cpu kullanımının %90 – %100 olduğunu gördüm. Bir kaç gün takip ettim ve durum hiç değişmiyordu.

Özellikle amavis servisinin devamlı cpu’nun %90 ve üzeri şekilde meşgul ettiğinin farkına vardım. Clamd ve amavis servislerinin kurulumunda yada kullanımında herhangi bir sıkıntı yoktu. Bu servislerle ilgili hiçbir hata yokken bile cpu’yu bu kadar zorlaması canımı sıktı ama neyse ki sorunu çözdüm.

Öncelikle clamd ve amavis servislerinin hatasız kurulu olduğuna ve sorunsuz çalıştığına emin olun.

Gelelim sorunun çözümüne;

ssh ile serverimize bağlanalım.

İlk komutumuz : service clamd stop

Komutumuzu yazdıktan sonra 15 – 20 saniye bekleyelim.

İkinci komutumuz : rm -f /var/run/clamd.amavisd/clamd.sock

Sorun olduğunu düşündüğümüz ilgili dosyayı silelim.

Üçüncü Komutumuz : service clamd start

Servisimizi yeniden çalıştırdıktan sonra CWP panele geri dönelim ve Live Server Monitor (live load) kısmından cpu’nun durumunu izleyelim. Büyük ihtimalle cpu 100 olma sorunu devam ediyor olacaktır.

Dördüncü Komutumuz : sh /scripts/clamd_fix_100_cpu_usage

Bu komutta scriptimiz clamd servisini durdurup yeniden başlatacak. Tekrar Live server monitor’e dönelim ve cpu’yu tekrar gözlemliyelim. Sorununuz büyük ihtimalle çözülmüş olmalı 😉

Serveriniz içerisinde clamd_fix_cpu_usahe shell dosyası yoksa (Son güncel versiyon) aşağıdaki komutları herhangi bir editör ile kayıt edip servernize yükleyerek çalıştırabilirsiniz.


#!/bin/bash
# This script will fix clamd 100% cpu usage on the centos 7 servers

if [ -e "/usr/lib/systemd/system" ];then
cd /usr/lib/systemd/system

if [ -e "clamd.service" ];then
sed -i "s/^Type \= forking/Type \= simple/" clamd.service
sed -i 's/^ExecStart.*$/ExecStart = \/usr\/sbin\/clamd -c \/etc\/clamd.d\/amavisd.conf --foreground=yes/' clamd.service
fi

if [ -e "clamd-scan.service" ];then
sed -i 's/clamd@.service/clamd.service/' clamd-scan.service
fi

systemctl daemon-reload
service clamd stop
service amavisd stop

rm -f /var/run/clamd.amavisd/clamd.sock

service clamd start
service amavisd start
fi

2 YORUMLAR

CEVAP YAZ

Lütfen yorumunuzu yazın!
Lütfen adınızı buraya yazın