Napraw wysokie użycie procesora Zimbra za pomocą ClamAV lub FreshClam

Gdy serwer Zimbra nagle zwalnia, administratorzy często widzą clamdlub freshclamprawie widzą , że topusługa antywirusowa jest zablokowana i zakładają, że jest zablokowana. Taka sytuacja może mieć miejsce, ale oba procesy wykonują różne zadania: freshclampobierają i weryfikują aktualizacje sygnatur, a jednocześnie clamdskanują pliki i wiadomości. Zajęta kolejka poczty, przeładowanie bazy danych, nieudana pętla aktualizacji lub drugi demon antywirusowy – wszystko to może sugerować, że „ClamAV zużywa za dużo procesora”. Przed ponownym uruchomieniem lub zmianą ustawień antywirusowych należy zidentyfikować proces, który jest najbardziej obciążony.

Ten przewodnik prowadzi od kontroli niskiego ryzyka do odzyskiwania usług. Poniższe polecenia i ścieżki odzwierciedlają typowe instalacje Zimbra; dokładna ścieżka ClamAV i obsługiwane kroki odzyskiwania różnią się w zależności od wersji Zimbra Collaboration. Przed wprowadzeniem zmian należy je sprawdzić w zainstalowanej wersji.

1. Sprawdź, który proces ClamAV zużywa procesor

Zacznij od zapisania nazwy procesu, użycia procesora, czasu, jaki upłynął, oraz ścieżki polecenia. Uruchom to jako root lub na koncie z uprawnieniami do inspekcji procesów systemowych:

ps -eo pid,pcpu,pmem,etime,args | grep -E 'clamd|freshclam'

Następnie obserwuj podejrzany proces przez co najmniej krótki czas top -p PID, zastępując PIDgo numerem z pierwszego polecenia. Pojedynczy odczyt nie wystarczy do zdiagnozowania utrzymującego się problemu: psraportuje migawkę, a jednocześnie toppomaga sprawdzić, czy obciążenie procesora pozostaje wysokie, czy spada po zakończeniu skanowania lub aktualizacji. Zwróć również uwagę, czy ścieżka należy do Zimbry, zazwyczaj w ramach /opt/zimbra, czy do oddzielnego pakietu systemu operacyjnego.

Monit terminala Linux pokazujący polecenie listy procesów przefiltrowane pod kątem clamd i freshclam
Polecenie terminala filtruje listę procesów, dzięki czemu można sprawdzić, czy aktywny jest clamd lub freshclam.

Jeśli freshclampo pomyślnej aktualizacji nastąpi krótkotrwały skok i proces przejdzie w stan bezczynności lub powróci do stanu bezczynności, różni się to od procesu, który pozostaje zajęty. Jeśli clamdjest to proces, który jest długotrwale zajęty, bardziej prawdopodobnym punktem wyjścia jest skanowanie wiadomości lub ładowanie bazy danych. Nie zamykaj żadnego procesu tylko dlatego, że jedna próbka ma wysoki poziom obciążenia; najpierw sprawdź logi i upewnij się, że poczta nadal jest przesyłana.

2. Przed zmianą ustawień przeczytaj logi programu antywirusowego

W katalogu logów Zimbry znajdują się logi antywirusowe. W wielu instalacjach sprawdź ostatnie wpisy za pomocą:

tail -n 80 /opt/zimbra/log/clamd.log
tail -n 80 /opt/zimbra/log/freshclam.log

Sprawdź znaczniki czasu obok skoku obciążenia procesora. W przypadku clamd.log, powtarzające się żądania skanowania lub komunikaty dotyczące obciążenia bazy danych mogą łączyć użycie procesora z aktywnością poczty lub przeładowaniem podpisu. W przypadku freshclam.log, zakończona aktualizacja, po której następuje okres ciszy, sugeruje rutynowe prace aktualizacyjne; powtarzające się awarie połączenia, ponowne próby, błędy sumy kontrolnej lub aktualizacja, która nigdy się nie kończy, wymagają dokładniejszego zbadania. Sprawdź również dziennik poczty Zimbra w tym samym czasie, ponieważ wzrost liczby wiadomości przychodzących lub załączników może zwiększyć częstotliwość skanowania.

Terminal Linux pokazujący polecenia umożliwiające przeglądanie ostatnich wpisów w dzienniku clamd i freshclam
Użyj dwóch poleceń log, aby porównać aktywność skanera z aktywnością aktualizacji sygnatury.

Skorzystaj z odnośnika do pliku dziennika Zimbra , aby potwierdzić lokalizację logów dla swojej wersji. Poradnik rozwiązywania problemów z FreshClam firmy ClamAV wyjaśnia typowe błędy programu aktualizującego, w tym problemy z DNS, pobieraniem i limitami przepustowości. Ostrzeżenie, że silnik jest starszy niż najnowsza wersja ClamAV, samo w sobie nie dowodzi uszkodzenia bazy danych; Zimbra pakuje przetestowany silnik z wersją ZCS.

3. Sprawdź, czy nie występuje duplikat programu aktualizującego, czy na dysku nie ma za mało miejsca lub czy nie występuje gwałtowny wzrost obciążenia

Przed przystąpieniem do strojenia należy wykluczyć typowe przyczyny, które mogą powodować zajęcie usługi:

  • Duplikaty procesów: Sprawdź, czy występuje więcej niż jeden clamdproces freshclam. Osobno zainstalowana usługa ClamAV na poziomie systemu operacyjnego lub niestandardowe zadanie cron mogą uruchamiać drugą kopię obok usługi zarządzanej Zimbra. Nie wyłączaj usługi, dopóki nie potwierdzisz, do którego produktu należy i co ją uruchamia.
  • Obciążenie dysku: Sprawdź dostępne miejsce i inody za pomocą df -h /opt/zimbrai df -i /opt/zimbra. Pełny system plików może uniemożliwić tymczasową aktualizację lub zapis do dziennika i spowodować ponowne próby. Nie usuwaj ręcznie plików sygnatur, aby zwolnić miejsce.
  • Wolumen poczty: Porównaj wzrost obciążenia procesora z wolumenem wiadomości przychodzących, rozmiarem załącznika, pocztą w kolejce i wszelkimi ostatnimi zbiorczymi przesyłkami. Wzrost obciążenia może zwiększyć clamdobciążenie nawet przy sprawnym działaniu usługi.
  • Aktualizacja łączności: Jeśli freshclamproblem się powtarza, sprawdź rozdzielczość DNS hosta, zegar, łączność wychodzącą i wszelkie wymagane ustawienia serwera proxy. Rozwiąż podstawowy problem z siecią lub serwerem proxy zamiast wielokrotnie uruchamiać ręczne zadania aktualizacji.
Wiersz terminala Linux z poleceniami do sprawdzenia przestrzeni w systemie plików Zimbra i inspekcji katalogu bazy danych ClamAV
Przed próbą odzyskania bazy danych sprawdź ilość wolnego miejsca i katalog bazy danych sygnatur.

ClamAV dokumentuje, w jaki sposób konfiguracja FreshClam kontroluje zachowanie aktualizacji i rejestrowanie w swojej instrukcji konfiguracji . Zimbra dokumentuje również atrybut częstotliwości aktualizacji definicji wirusów, ale jego wartość i konfigurację należy sprawdzić w swojej wersji ZCS. Nie zmniejszaj częstotliwości aktualizacji jako szybkiego rozwiązania problemu z procesorem: nieaktualne sygnatury osłabiają ochronę, a nieprawidłowa ścieżka DNS lub proxy będzie nadal powodować błędy niezależnie od harmonogramu.

4. Zastosuj najmniej uciążliwe rozwiązanie zgodne z dowodami

Jeśli clamd jest zajęty podczas wysyłania poczty seryjnej

Pozwól, aby bieżące obciążenie procesora i dostarczanie poczty spadło. Jeśli ten sam schemat się powtórzy, skoreluj go z rozmiarem wiadomości, skompresowanymi załącznikami i wolumenem poczty przychodzącej, a następnie sprawdź pojemność serwera i politykę skanowania załączników w swojej organizacji. Unikaj dodawania nieudokumentowanych limitów ClamAV lub wykluczania typów plików bez oceny wpływu na bezpieczeństwo i sprawdzenia, które mechanizmy kontroli Zimbra obsługuje zainstalowana wersja.

Jeśli Freshclam wielokrotnie zawodzi

Napraw DNS, proxy, zaporę sieciową, zegar lub wychodzący dostęp do sieci wskazany w logu. Upewnij się, że uruchomiony jest tylko przeznaczony dla Zimbry program aktualizujący. Nie planuj częstych ręcznych wywołań ani nie pobieraj baz danych sygnatur za pomocą skryptów ad hoc; ClamAV identyfikuje FreshClam lub cvdupdate jako obsługiwane metody aktualizacji, a zintegrowana z systemem Zimbra integracja powinna pozostać źródłem prawdy dla serwera Zimbra.

Jeśli baza danych wydaje się uszkodzona lub clamd nie uruchamia się

Błędy takie jak nieprawidłowo sformatowana baza danych, błąd sumy kontrolnej lub nieudane załadowanie bazy danych wymagają odzyskiwania z uwzględnieniem wersji. Procedura resetowania definicji ClamAV w Zimbra ma różne instrukcje dla różnych generacji ZCS, w tym dla różnych ścieżek binarnych FreshClam. Przed przeniesieniem lub odbudową plików bazy danych należy zapoznać się z pełną procedurą dla konkretnej wersji, którą uruchamiasz. Zachowaj kopię istniejącej bazy danych do czasu potwierdzenia odzyskania i nigdy nie stosuj poleceń ze starego podręcznika do wersji bezkrytycznie.

Nie zastępuj plików binarnych ClamAV firmy Zimbra samodzielną kompilacją upstream jako pierwszą metodą poprawy wydajności. Dokumentacja firmy Zimbra ostrzega, że ​​zmiany w silniku poza cyklem mogą nie być obsługiwane; użyj odpowiedniej poprawki ZCS lub ścieżki aktualizacji, jeśli sam dołączony silnik wymaga aktualizacji.

Uruchom ponownie usługę antywirusową dopiero po sprawdzeniu przyczyny

Jeśli usługa nadal będzie działać nieprawidłowo po usunięciu problemu, kontrolowany restart programu antywirusowego może usunąć nieaktualny proces lub ponownie załadować naprawioną bazę danych. Zaplanuj to na czas, gdy krótka przerwa w skanowaniu będzie akceptowalna, i postępuj zgodnie z sekwencją poleceń dla swojej wersji ZCS. Dokumenty dotyczące procedury Zimbra zmantivirusctl stopi zmantivirusctl starturuchom jako zimbraużytkownik:

su - zimbra
zmantivirusctl stop
zmantivirusctl start
zmcontrol status

Nie używaj pełnej wersji zmcontrol stopw przypadku problemu dotyczącego wyłącznie ClamAV, chyba że wymaga tego Twój plan konserwacji. Jeśli program antywirusowy nie powróci do działania, zachowaj odpowiednie logi i skorzystaj z kanału rozwiązywania problemów lub pomocy technicznej Zimbra dla konkretnej wersji, zamiast powtarzać cykliczne restarty.

Monit terminala dla użytkownika Zimbra pokazujący polecenia zatrzymania i uruchomienia programu antywirusowego, a następnie sprawdzenie stanu Zimbra
Udokumentowane polecenia usługi antywirusowej i kontrola statusu pojawiają się w wierszu poleceń użytkownika Zimbra.

5. Sprawdź, czy użycie procesora i skanowanie poczty wróciło do normy

Po korekcie lub ponownym uruchomieniu, powtórz sprawdzanie procesu i obserwuj trend procesora, zamiast polegać na jednej, natychmiastowej wartości. Upewnij się, że wartość clamdjest obecna, freshclamnie jest blokowana przez powtarzające się próby i zmcontrol statuszgłasza działanie programu antywirusowego. Przejrzyj nowe wpisy w dzienniku pod kątem pomyślnego załadowania bazy danych i braku powtarzających się błędów aktualizacji lub skanowania. Na koniec sprawdź, czy standardowe wiadomości testowe są dostarczane i obsługiwane zgodnie z polityką bezpieczeństwa poczty elektronicznej obowiązującą w Twojej organizacji.

Prawidłowe odzyskiwanie danych ma trzy obserwowalne oznaki: proces odpowiedzialny za problem nie obciąża już procesora po zakończeniu pracy; logi przestają powtarzać ten sam błąd; a przepływ poczty i stan usługi antywirusowej Zimbra pozostają w dobrym stanie. Jeśli obciążenie procesora utrzymuje się na wysokim poziomie, należy zebrać migawkę procesu ze znacznikiem czasu, odpowiadające im clamd.logwpisy freshclam.logw dzienniku poczty, wyniki dotyczące miejsca na dysku oraz wersję systemu ZCS. Takie dowody pomagają odróżnić rzeczywistą usterkę skanera od dużego wolumenu poczty lub uszkodzonej ścieżki aktualizacji, nie osłabiając skuteczności skanowania w poszukiwaniu złośliwego oprogramowania.

Uwaga dotycząca wersji: wskazówki sprawdzono 6 października 2026 r. Centrum techniczne Zimbra zawiera zarówno bieżące materiały referencyjne, jak i starsze strony rozwiązywania problemów dotyczące konkretnych wydań; sprawdź polecenia i ścieżki w dokumentacji zainstalowanej wersji ZCS.

Zostaw komentarz

10 najlepszych narzędzi do pingowania w celu znajdowania urządzeń w sieci

10 najlepszych narzędzi do pingowania w celu znajdowania urządzeń w sieci

Porównaj 10 narzędzi do pingowania, które umożliwiają szybkie wykrywanie sieci LAN, skanowanie międzyplatformowe i zarządzanie adresami IP. Dowiedz się, co narzędzie pingujące może Ci powiedzieć, a czego nie.

6 najlepszych narzędzi do zarządzania siecią, umożliwiających śledzenie wydajności

6 najlepszych narzędzi do zarządzania siecią, umożliwiających śledzenie wydajności

Porównaj sześć narzędzi do zarządzania siecią służących do monitorowania wydajności, obejmujących zasięg SNMP, mapowanie, alerty, modele wdrażania i kompromisy kosztów.

Ping Monitor: 7 darmowych i otwartych narzędzi do monitorowania dostępności sieci

Ping Monitor: 7 darmowych i otwartych narzędzi do monitorowania dostępności sieci

Porównaj siedem darmowych i otwartych monitorów pingów — od kompletnych pakietów sieciowych po ukierunkowane sondy opóźnień — i wybierz odpowiedni monitor pod kątem dostępności, utraty pakietów i historii.

QoS w sieciach: czym jest jakość usług i jak działa

QoS w sieciach: czym jest jakość usług i jak działa

Dowiedz się, co oznacza QoS w sieciach, w jaki sposób oznaczenia DSCP i kolejki ruchu nadają priorytet aplikacjom głosowym, wideo i biznesowym oraz czego QoS nie jest w stanie naprawić.

Najlepsze oprogramowanie serwera SFTP do bezpiecznego przesyłania plików

Najlepsze oprogramowanie serwera SFTP do bezpiecznego przesyłania plików

Porównaj niezawodne oprogramowanie serwera SFTP dla systemów Windows i Linux, w tym OpenSSH, Bitvise, SolarWinds i SFTPGo. Znajdź rozwiązanie odpowiednie dla swoich potrzeb w zakresie bezpieczeństwa i transferu plików.

7 najlepszych narzędzi do zarządzania adresami IP dla zespołów sieciowych

7 najlepszych narzędzi do zarządzania adresami IP dla zespołów sieciowych

Porównaj siedem narzędzi do zarządzania adresami IP służących do wykrywania podsieci, koordynacji DNS i DHCP, inwentaryzacji sieci i otwartego oprogramowania IPAM.

6 najlepszych narzędzi do monitorowania serwerów Windows Server zapewniających lepszą dostępność i wydajność

6 najlepszych narzędzi do monitorowania serwerów Windows Server zapewniających lepszą dostępność i wydajność

Porównaj sześć narzędzi do monitorowania systemu Windows Server pod kątem zbierania danych systemu Windows, widoczności aplikacji, modelu wdrażania i licencjonowania, aby znaleźć odpowiednie rozwiązanie.

10 najlepszych narzędzi do skanowania sieci w celu wykrywania urządzeń i adresów IP

10 najlepszych narzędzi do skanowania sieci w celu wykrywania urządzeń i adresów IP

Porównaj narzędzia do skanowania sieciowego umożliwiające szybkie wykrywanie urządzeń, skanowanie adresów IP na wielu platformach oraz zarządzanie IPAM w przedsiębiorstwie. Znajdziesz tu wskazówki dotyczące dopasowania każdej opcji do swojej sieci.

Najlepsze praktyki monitorowania sieci: co śledzić i jakich narzędzi używać

Najlepsze praktyki monitorowania sieci: co śledzić i jakich narzędzi używać

Zbuduj praktyczny monitoring sieci z przejrzystym zakresem urządzeń, przydatnymi wskaźnikami wydajności, przydatnymi alertami oraz porównaniem SolarWinds NPM, PRTG i OpManager.

Jak używać Nmap do śledzenia trasy i odczytywania ścieżki sieciowej

Jak używać Nmap do śledzenia trasy i odczytywania ścieżki sieciowej

Użyj opcji --traceroute programu Nmap, aby mapować przeskoki do autoryzowanego hosta, zrozumieć dane wyjściowe dotyczące przeskoków i czasu RTT oraz rozwiązywać problemy z brakującymi odpowiedziami bez nadmiernego skanowania.