J'ai une Ubuntu 14.04 qui utilise ClamAV pour analyser certains fichiers manuellement dans le cadre de certains logiciels. Clamd est en cours d'exécution tout le temps et j'utilise clamdscan pour le laisser analyser mes fichiers. Analyser les fichiers est assez rapide, redémarrer le démon à cause de changements de configuration ou de freshclam, etc. est assez lent. Lent signifie que cela prend environ 5 minutes avec une charge de 100% du processeur, mais sans aucune E / S sur un ordinateur. 2,93 GHz Xeon X5570 . En redémarrant le même démon sur une autre machine virtuelle avec Ubuntu et la même version de ClamAV, le démon redémarre au bout de 20 secondes environ.
La seule différence entre les deux machines réside dans le nombre de CPU attribuées, 10 contre 2, la mémoire principale, 48 contre 6 Go et la charge, car une machine est en production, l'autre à des fins de développement et de test. La machine de production a toujours environ 20 à 25 Go de RAM en mémoire cache, etc. J'ai déjà fourni 48 Go de RAM à la machine de développement et j'ai même rempli des caches jusqu'à 40 Go en copiant des fichiers, ce qui ne changer quelque chose concernant les temps de redémarrage, ils étaient encore autour de 20 secondes.
J'imagine que clamd analyse la mémoire lors du redémarrage et que des éléments tels que le cache et les tampons font la différence. Mais je ne trouve pas de documentation ou de configuration prouvant si la mémoire RAM est analysée et, le cas échéant, laquelle. J'ai beaucoup de démons en cours d'exécution avec différents utilisateurs et clamd est exécuté en tant qu'utilisateur clamav
seulement, donc en théorie, il n’est pas facilement capable de lire la mémoire d’autres processus.
Dans le passé, ClamAV contenait des bogues liés aux redémarrages lents, mais rien de ce que je trouve sur ceux qui correspondent à la version 0.99.2 de ClamAV que j'utilise actuellement Donc, ce comportement ne doit pas être un bug, d’autant plus que cela ne se produit pas dans ma machine de développement.
Existe-t-il des documents disponibles qui prouvent ce que je suppose? Si tel est le cas, existe-t-il une configuration disponible pour changer ce comportement?