Har du noen gang opplevd situasjonen der du åpner en bestemt applikasjon (for eksempel Firefox), og det bringer hele systemet til stillestilling? Hvis du kjører en webserver, er det siste som du vil se, å få et program å krasje hele systemet og bringe alle nettstedene ned.

Cpulimit er et program for Linux som kan begrense CPU-bruken av en prosess. Det er nyttig hvis du vil begrense et bestemt program fra å ta opp for mye CPU ressurser og dermed krasje systemet. Dette kan også være nyttig når du trenger å kjøre flere intensive programmer samtidig.

Merk : cpulimit skal fungere for alle Linux distro. I denne opplæringen bruker vi Ubuntu til illustrasjon.

Installasjon

I Ubuntu kan du installere cpulimit via Ubuntu Software Center, klikk her for å installere, eller skriv følgende kommando i terminal:

 sudo apt-get install cpulimit 

bruk

For å begrense en prosess, bruk kommandoen

 sudo cpulimit -p PID-1 CPU% 

PID er prosess-ID for det kjørende programmet og CPU% er prosentandelen (0-100, kun tall) av CPU-ressurser tillatt for appen. Du kan skaffe PID fra System -> Administration -> System Monitor .

Fra skjermbildet ovenfor kan du se at Swiftfox-programmet (en variant av Firefox) tar opp 68% av CPU-ressursene før CPU-grensen er angitt. La oss se hva som skjer når vi begrenser CPU-bruken til 20%.

% CPU faller umiddelbart under 20% og har aldri krysset 20% -merket igjen.

Utvide cpulimit - Automatiserer hele prosessen

Cpulimit er nyttig når du støter på et program som tar opp mye CPU ressurser, eller trenger å utføre batch jobb. I tillegg kan du også sette opp det for å overvåke systemet for eventuelle misbehavende applikasjoner. Dette er spesielt nyttig i et serveroppsett.

abcuser fra Ubuntu Forum har kommet opp med et flott skript som automatiserer overvåkingen av systemet ditt og begrenser en prosess som overstiger en forhåndsinnstilt CPU-grense. Skriptet lar deg også sette svarteliste / hviteliste for bestemte applikasjoner.

Før vi starter, må du sørge for at du har installert og installert gawk .

 sudo apt-get install cpulimit gawk 

Last ned skriptene her. Trekk tjærefilen til hjemmemappen. Du bør ha to filer inne i cpulimit-mappen: cpulimit_daemon.sh og cpulimit .

Åpne filen cpulimit_daemon.sh i tekstredigeringsprogrammet (gEdit) og endre følgende:

CPU_LIMIT : Dette er maksimal CPU-ressurser tilgjengelig for hver applikasjon. Standardverdien er 20%.

DAEMON_INTERVAL : Dette er intervallet for scriptet for å sjekke systemet. Standardinnstillingen er satt til 3 sekunder.

BLACK_PROCESS_LIST : Dette inneholder listen over elementer som spesielt vil overvåke. Du kan bruke "|" -begrensningen til å inkludere flere prosesser. For eksempel, " mysql|firefox|gedit ".

WHITE_PROCESSES_LIST : Dette inneholder listen over elementer som du IKKE vil overvåke. Du kan bruke "|" -begrensningen til å inkludere flere prosesser. For eksempel, " mysql|firefox|gedit ".

Merk : En eller begge variablene BLACK_PROCESSES_LIST og WHITE_PROCESSES_LIST må være tomme. Du kan ikke ha en svarteliste og en hviteliste på samme tid.

Setter opp

Kopier filen cpulimit_daemon.sh til / usr / bin / mappen

 sudo cp ~ / cpulimit / cpulimit_daemon.sh / usr / bin sudo chmod 700 /usr/bin/cpulimit_daemon.sh 

Kopier cpulimit- filen til /etc/init.d/folder, sett den nødvendige tillatelsen og gjør den kjørt under statup.

 sudo cp ~ / cpulimit / cpulimit /etc/init.d/ sudo chown root: root /etc/init.d/cpulimit sudo chmod + x /etc/init.d/cpulimit sudo oppdatering-rc.d cpulimit defaults 

Nå, start systemet på nytt. Cpulimit-demonen skal starte automatisk.

Du kan åpne en terminal og skrive:

 sudo service cpulimit status 

for å sjekke om cpulimit-demonen kjører. Hvis det ikke kjører, start det med kommandoen

 sudo service cpulimit start 

Alternativt, stopp det med:

 sudo service cpulimit stopp 

Avinstallere

For å avinstallere, her er hva du trenger å gjøre:

1. Stopp cpulimit daemon

 sudo service cpulimit stop # Stopp cpulimit daemon og alle cpulimited prosesser 

2. Fjern demon fra oppstartsprosedyren

 sudo update-rc.d -f cpulimit fjern # Fjern symbolske lenker 

3. Slett oppstartsprosedyren

 sudo rm /etc/init.d/cpulimit # Slett cpulimit oppstartskript 

4. Slett cpulimit daemon

 sudo rm /usr/bin/cpulimit_daemon.sh # Slett cpulimit demon script 

5. Avinstaller cpulimit-programmet

 sudo apt-get fjerne cpulimit 

Eventuelt avinstaller gawk-programmet

 sudo apt-get fjerne gawk 

For mer informasjon, se Ubuntu Forum for mer detaljer.

Kodekreditt : abcuser fra Ubuntu Forum