Probleem
Wanneer clamav-scan.service draait, gebruikt clamscan een CPU-core voor ~99% gedurende de hele scan (30+ minuten op een gemiddelde /home directory). Omdat clamscan single-threaded is, uit zich dit als één of twee cores die op maximum vastzitten terwijl de rest niets doet.
Op een laptop is dit extra merkbaar: aanhoudend hoog stroomverbruik (~20W in mijn geval), hoge temperaturen (~70-80°C), hoorbare ventilatoren.
Voorgestelde oplossing
Voeg resource limits toe aan de [Service] sectie van clamav-scan.service:
[Service]
Nice=19
IOSchedulingClass=idle
CPUQuota=50%
Wat elk doet:
Nice=19 — laagste CPU-prioriteit, zodat interactieve processen altijd voorrang krijgen
IOSchedulingClass=idle — disk I/O gebeurt alleen wanneer niets anders de schijf nodig heeft
CPUQuota=50% — harde limiet op 50% van één core, voorkomt volledige verzadiging
De scan duurt hierdoor langer in kloktijd, maar verstoort niet meer waar de gebruiker mee bezig is. Voor een achtergrond-scan is dat de juiste afweging.
Probleem
Wanneer
clamav-scan.servicedraait, gebruiktclamscaneen CPU-core voor ~99% gedurende de hele scan (30+ minuten op een gemiddelde/homedirectory). Omdatclamscansingle-threaded is, uit zich dit als één of twee cores die op maximum vastzitten terwijl de rest niets doet.Op een laptop is dit extra merkbaar: aanhoudend hoog stroomverbruik (~20W in mijn geval), hoge temperaturen (~70-80°C), hoorbare ventilatoren.
Voorgestelde oplossing
Voeg resource limits toe aan de
[Service]sectie vanclamav-scan.service:Wat elk doet:
Nice=19— laagste CPU-prioriteit, zodat interactieve processen altijd voorrang krijgenIOSchedulingClass=idle— disk I/O gebeurt alleen wanneer niets anders de schijf nodig heeftCPUQuota=50%— harde limiet op 50% van één core, voorkomt volledige verzadigingDe scan duurt hierdoor langer in kloktijd, maar verstoort niet meer waar de gebruiker mee bezig is. Voor een achtergrond-scan is dat de juiste afweging.