Vous aimez beaucoup votre Raspberry, mais voilà, il y a un process gourmand qui consomme toute la CPU.
Pour faire la chasse, ou tout simplement pour savoir ce qui se passe sur votre machine, il y a une commande pratique : la commande ps.
Cette commande est exécutée très souvent, mais très peu de personne l’utilise pleinement. Je vous propose donc, comme avec la commande awk, de partager avec vous mes petits tips.
Trouver les process consommant le plus de mémoire
idem@darius:~$ ps -eo pmem,pcpu,pid,args | tail -n +2 | sort -rnk 1 | head 16.6 1.8 18119 /usr/bin/python2.7 /opt/sickrage/SickBeard.py -q --daemon --nolaunch --datadir=/opt/sickrage 4.4 3.2 28075 /usr/bin/python /usr/bin/deluged -d -l /var/log/deluge/daemon.log -L warning 2.4 0.6 28079 /usr/bin/python /usr/bin/deluge-web -l /var/log/deluge/web.log -L warning 0.6 0.0 1291 rsync --server -vlHogDtpre.iLsfx . /Backup/robbie/jeedom/ 0.4 0.1 1290 sshd: idem@notty 0.3 0.0 1351 sshd: idem [priv] 0.2 0.0 934 /usr/sbin/pulsewayd 0.2 0.0 30749 ssh idem@192.168.25.83 0.2 0.0 30655 -bash 0.2 0.0 30654 sshd: idem@pts/3
Trouver les process consommant le plus de cpu
idem@darius:~$ ps -eo pmem,pcpu,pid,args | tail -n +2 | sort -rnk 2 | head 4.4 3.2 28075 /usr/bin/python /usr/bin/deluged -d -l /var/log/deluge/daemon.log -L warning 16.6 1.8 18119 /usr/bin/python2.7 /opt/sickrage/SickBeard.py -q --daemon --nolaunch --datadir=/opt/sickrage 2.4 0.6 28079 /usr/bin/python /usr/bin/deluge-web -l /var/log/deluge/web.log -L warning 0.6 0.0 1291 rsync --server -vlHogDtpre.iLsfx . /Backup/robbie/jeedom/ 0.4 0.1 1290 sshd: idem@notty 0.3 0.0 1351 sshd: idem [priv] 0.2 0.0 934 /usr/sbin/pulsewayd 0.2 0.0 30749 ssh idem@192.168.25.83 0.2 0.0 30655 -bash 0.2 0.0 30654 sshd: idem@pts/3
Le détail de ces 2 commandes
J’utilise donc la commande ps avec un certain nombre de paramètres que je vais détailler ci dessous.
– ps Liste des processus courants
-e Selectionner l’ensemble des process
o Spécifier un format utilisateur dont la configuration est :
pmem,pcpu,pid,args le format sera donc définit par mémoire,cpu, numéro de pid et commande
A cela, je rajoute un peu de tri avec les commandes tail et sort :
tail -n +2 : sortie standard à partir de la seconde ligne (pour éviter la sortie des entêtes de colonnes comme %MEM, etc …),
sort -rnk 1 : classé par ordre numérique (n), décroissant (r), et cela, suivant la première colonne (mémoire),
sort -rnk 2 : puis, classé par ordre numérique (n), décroissant (r), et suivant la seconde colonne (cpu),
head : sortie des 10 premières lignes uniquement.
Voilà, j’espère que ces quelques explications vous serviront. Bien entendu, essayer de les adapter au mieux à vos besoins.