Odpowiedzi:
Jako alternatywa dla cpulimit:
Możesz rozpocząć clamscan za pomocą polecenia-nice, np
nice -n 19 clamscan
.
Zobacz man nice
szczegóły.
Robi NIE ograniczyć CPU, ale ma niższy priorytet procesu.
Istnieje również renice
zmiana priorytetu uruchomionych procesów.
nice
ing jest tradycyjną drogą i nie bez powodu.
Zainstaluj cpulimit
sudo apt-get install cpulimit
Zapewnia różne metody ograniczania wykorzystania procesora przez proces, foo
aby powiedzieć, 20%
Przez jego nazwa-procesu:
sudo cpulimit -e foo -l 20
.
Według bezwzględnej nazwy ścieżki:
sudo cpulimit -P /usr/bin/foo -l 20
Według jego PID:
pidof foo
. (powiedzmy, daje 1881)sudo cpulimit -p 1881 -l 20
/etc/cron.hourly/virusscan
to nie jest proces. Jeśli chcesz ograniczyć clamscan
, uruchom sudo cpulimit -e clamscan -l 15
.
sudo
nie jest wymagany proces nie jest procesem systemowym. Dla przypomnienia
To miał być komentarz do odpowiedzi Clausi (które moim zdaniem jest najbardziej „poprawne” z punktu widzenia administracji systemu, ale moim zdaniem przerodziło się w coś zbyt dużego, by zmieściło się w polu komentarza).
Clamscan ma określoną ilość pracy, więc ograniczenie go do określonej prędkości oznacza, że po prostu potrwa dłużej. Dłużej utrzyma procesor w rywalizacji.
Pozwól mu działać tak szybko, jak to możliwe, co oznacza, że używasz swojego procesora w pełni. Uczynienie go bardzo „ładnym” oznacza, że pozwoli innym procesom wykonać swoją pracę przed własną. Oznacza to, że jeśli istnieje wiele innych zajętych procesów, tak, wykonanie własnej pracy zajmie dużo czasu, ale jeśli nic tam nie będzie, po prostu poradzi sobie z obciążeniem.
Jeśli używasz clamd z systememd, możesz skorzystać z tej CPUQuota
opcji.
Edytuj, /lib/systemd/system/clamav-daemon.service
aby uwzględnić ten wiersz w [Service]
sekcji:
CPUQuota=20%
Następnie uruchom ponownie usługę
sudo systemctl daemon-reload
sudo systemctl reload-or-restart clamav-daemon
Ten temat może być przydatny: HOWTO: Ustaw maksymalne procentowe zużycie procesora przez dowolny proces