La quantité de mémoire utilisée par un utilisateur spécifique

8

Est-il possible de connaître la quantité de mémoire que j'utilise sur une machine Linux multi-utilisateurs? Je veux savoir si j'utilise beaucoup de mémoire et éventuellement gêner les autres, afin de pouvoir arrêter mes processus si nécessaire.

J'ai vu dans une autre question qui sa -mpourrait le faire, mais je n'ai apparemment pas accès à cette commande sur ce serveur.

Edit: je n'ai pas accès à sudo, donc je ne peux pas installer de trucs. Le serveur est CentOS.

Hatchepsout
la source
CentOS5, 6 ou 7?
jsbillings
@jsbillings "CentOS version 5.11 (Final)"
Hatshepsut

Réponses:

13

Vous pouvez utiliser psavec awkpour rechercher l'utilisation de la mémoire physique par un utilisateur:

ps -U root --no-headers -o rss | awk '{ sum+=$1} END {print int(sum/1024) "MB"}'

Ici, il imprime la mémoire utilisée par rootla sortie.

coffeMug
la source
1
Donc dans mon cas, nous pouvons utiliser la variable d'environnement suggérée par @Luciano: ps -U $USER --no-headers -o rss | awk '{ sum+=$1} END {print int(sum/1024) "MB"}'
Hatshepsut
1
Oui, exactement! Changez rootpour n'importe quel utilisateur que vous avez dans le système.
coffeMug
J'exécute du code multitraitement, et cette commande a dit que j'utilise 2 To de RAM =)) alors que mon ordinateur n'a que 200 Go de RAM.
32r34wgf3e le
1

Je pense que smem est le meilleur outil dans votre cas.

Installez smem et essayez

smem -uk

Si vous utilisez debian, vous pouvez l'installer en utilisant:

apt-get install smem 

Si vous ne pouvez rien installer sur le serveur, vous pouvez essayer:

 ps haux | awk -v user=$USER '$1 ~ user { sum += $4} END { print user, sum; }'

N'oubliez pas que $ USER est une variable d'environnement, vous n'avez donc pas besoin de la définir.

Luciano Andress Martini
la source
Dans quelles unités les résultats sont-ils - gigaoctets? Sur mon bureau actuel, l'exécution de cette commande renvoie 76, ce qui est difficile à interpréter comme Go (je n'ai pas beaucoup de RAM).
Hatchepsout
1
Si vous parlez de ps haux, il renvoie l'utilisation en pourcentage.
Luciano Andress Martini
Je n'ai pas accès à smem sur le serveur, mais sur mon hôte local, je reçois User Count Swap USS PSS RSS user 127 716.0M 11.1G 11.1G 11.9G
Hatchepsout
L'autre commande renvoie l'utilisation en pourcentage.
Luciano Andress Martini