Introduction détaillée aux principales commandes du système Linux

Réimpression d'un article de Ba Shi, le ginkgo

Réimprimé à partir de: https://blog.csdn.net/yjclsx/article/details/81508455  

utilisation de la commande supérieure

La commande top est souvent utilisée pour surveiller l'état du système de Linux. C'est un outil d'analyse des performances couramment utilisé qui peut afficher l'occupation des ressources de chaque processus du système en temps réel.

Comment utiliser top top [-d number] | top [-bnp]

Explication des paramètres:

-d: nombre représente le nombre de secondes, qui représente l'intervalle auquel la page affichée par la commande top est mise à jour une fois. La valeur par défaut est de 5 secondes. -b: Exécute top par lots. -n: Utilisé conjointement avec -b pour indiquer que la sortie de la commande top doit être exécutée plusieurs fois. -p: Spécifiez un numéro de processus pid spécifique pour l'observation.

Sur la page affichée par la commande du haut, vous pouvez également saisir les touches suivantes pour exécuter les fonctions correspondantes (notez que la casse est sensible):

?: Afficher les commandes qui peuvent être saisies en haut P: afficher dans l'ordre des ressources d'utilisation du processeur M: afficher dans l'ordre des ressources d'utilisation de la mémoire N: afficher dans l'ordre des pids T: afficher dans l'ordre cumulatif du temps utilisé par le processus k: donner un pid Un signal. Peut être utilisé pour tuer le processus r: re-personnaliser une belle valeur pour un pid (ie priorité) q: exit top (vous pouvez aussi quitter top avec ctrl + c).

La signification des principaux paramètres de sortie

Voici une capture d'écran de l'utilisation de la commande top pour effectuer des tests de performances:

Figure un (ubuntu):

Figure deux (centos):

1. 5 premières lignes de statistiques

Ligne 1: top-05: 43: 27 jusqu'à 4:52, 2 utilisateurs, charge moyenne: 0,58, 0,41, 0,30 La 
ligne 1 est les informations de la file d'attente de tâches, et ses paramètres sont les suivants:

contenu sens
05:43:27 Indique l'heure actuelle
jusqu'à 4:52 Le format du temps de fonctionnement du système est heure: minute
2 utilisateurs Nombre d'utilisateurs actuellement connectés
moyenne de charge: 0,58, 0,41, 0,30 Charge système, c'est-à-dire la longueur moyenne de la file d'attente des tâches. Les trois valeurs sont les valeurs moyennes d'il y a 1 minute, 5 minutes et 15 minutes jusqu'à présent.

Charge moyenne: si ce nombre est divisé par le nombre de CPU logiques, lorsque le résultat est supérieur à 5, cela indique que le système est surchargé. 

Ligne 2: Tâches: 159 au total, 1 en cours d'exécution, 158 en sommeil, 0 arrêté, 0 zombie  
Ligne 3:% CPU (s): 37.0 us, 3.7 sy, 0.0 ni, 59.3 id, 0.0 wa, 0.0 hi, 0.0 si , 0.0 st Les 
deuxième et troisième lignes sont les informations de processus et de CPU. 
Lorsqu'il y a plusieurs CPU, ce contenu peut dépasser deux lignes. Les paramètres sont les suivants:

contenu sens
159 au total Nombre total de processus
1 course Nombre de processus en cours
158 couchage Nombre de processus de sommeil
0 arrêté Nombre de processus arrêtés
0 zombie Nombre de processus zombies
37,0 nous Pourcentage du processeur occupé par l'espace utilisateur
3,7 sy Pourcentage du processeur occupé par l'espace du noyau
0,0 ni Pourcentage de CPU occupé par des processus dont la priorité a été modifiée dans l'espace de processus utilisateur
59.3 identifiant Pourcentage de CPU inactif
0,0 wa Pourcentage de temps CPU en attente d'entrée et de sortie
0,0 salut Le pourcentage de CPU occupé par l'IRQ matériel
0,0 si Le pourcentage de CPU occupé par les interruptions logicielles
0,0 st  


Ligne 4: KiB Mem: 1530752 au total, 1481968 utilisés, 48784 libres, 70988 tampons 
Ligne 5: KiB Swap: 3905532 au total, 267544 utilisés, 3637988 libres.617312 en cache Mem Les 
lignes 4 et 5 informations sur la mémoire et 
ses paramètres sont les suivants:

contenu sens
Mémoire KiB: 1530752 au total Mémoire physique totale
1481968 utilisé Mémoire physique totale utilisée
48784 gratuit Quantité totale de mémoire libre
70988 tampons (buff / cache) Quantité de mémoire utilisée comme cache du noyau
Swap KiB: 3905532 au total Surface d'échange totale
267544 d'occasion Surface d'échange totale utilisée
3637988 gratuit Montant total de la zone de swap libre
617312 Mem mis en cache Le montant total de la zone de swap tamponnée.
3156100 dispo Mem Représente la quantité de mémoire physique disponible pour la prochaine allocation du processus

La quantité totale de zone d'échange en mémoire tampon mentionnée ci-dessus, voici une explication. La soi-disant quantité totale de zone d'échange en mémoire tampon, c'est-à-dire que le contenu de la mémoire est transféré vers la zone d'échange, puis transféré dans la mémoire, mais la zone d'échange est utilisée S'il n'a pas été écrasé, la valeur correspond à la taille de la zone d'échange où le contenu existe déjà dans la mémoire. Lorsque la mémoire correspondante est à nouveau permutée, il n'est pas nécessaire d'écrire dans la zone d'échange. 

Il existe une formule approximative pour calculer la quantité de mémoire disponible: 
libre dans la quatrième ligne + tampons dans la quatrième ligne + mis en cache dans la cinquième ligne

2. Informations sur le processus

Nom de colonne sens
PID ID de processus
PPID ID de processus parent
RUSER Nom d'utilisateur réel
UID ID utilisateur du propriétaire du processus
UTILISATEUR Nom d'utilisateur du propriétaire du processus
GROUPE Le nom du groupe du propriétaire du processus
ATS Le nom du terminal qui a lancé le processus. Les processus qui ne sont pas lancés depuis le terminal sont affichés sous la forme?
PR priorité
NI belle valeur. Une valeur négative signifie une priorité élevée, une valeur positive signifie une priorité faible
P Le dernier processeur utilisé n'a de sens que dans un environnement multi-processeurs
%CPU Pourcentage de temps processeur entre la dernière mise à jour et le présent
TEMPS Le temps CPU total utilisé par le processus, en secondes
TEMPS + Le temps CPU total utilisé par le processus, en unités de 1/100 seconde
% MEM Le pourcentage de mémoire physique utilisé par le processus
VIRT La quantité totale de mémoire virtuelle utilisée par le processus, en ko. VIRT = SWAP + RES
ÉCHANGER La taille de la mémoire virtuelle utilisée par le processus à échanger, en ko
RES La taille de la mémoire physique utilisée par le processus qui n'a pas été permutée, en ko. RES = CODE + DONNÉES
CODE La taille de la mémoire physique occupée par le code exécutable, en ko
LES DONNÉES La taille de la mémoire physique occupée par des parties autres que le code exécutable (segment de données + pile), en ko
SHR Taille de la mémoire partagée, unité Ko
nFLT Défauts de page
nDRT Le nombre de pages qui ont été modifiées depuis la dernière écriture.
S Statut du processus. D = état de veille ininterrompu R = en cours d'exécution S = en veille T = suivi / arrêt Z = processus zombie
COMMANDER Nom de la commande / ligne de commande
WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名
Flags 任务标志

其他

默认进入top时,各进程是按照CPU的占用量来排序的。

1、在top基本视图中,按键盘数字“1”可以监控每个逻辑CPU的状况: 

 
2、敲击键盘‘b’(打开关闭加亮效果)top视图变换如下: 

PID为16283为当前top视图中唯一的运行态进程。也可以敲击键盘‘y’来打开或者关闭运行态进程的加亮效果。

3、敲击键盘‘x’(打开/关闭排序列的加亮效果),top视图变换如下: 

可以看到现在是按"%CPU"进行排序的,可以按”shift+>”或者”shift+<”左右改变排序序列。

4、改变进程显示字段

在top基本视图中,敲击”f”进入另一个视图,在这里可以编辑基本视图中的显示字段:

 

用上下键选择选项,按下空格键可以决定是否在基本视图中显示这个选项。

top命令是一个非常强大的功能,但是它监控的最小单位是进程,如果想监控更小单位时,就需要用到ps或者netstate命令来满足我们的要求。

参考文献

1、https://blog.csdn.net/quiet_girl/article/details/50668126

2、http://www.zhimengzhe.com/linux/298422.html

 

额外的:

以下转载自:https://www.cnblogs.com/sparkbj/p/6148817.html

Linux下如何查看哪些进程占用的CPU内存资源最多

linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
linux下获取占用内存资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
命令组合解析(针对CPU的,MEN也同样道理):
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
该命令组合实际上是下面两句命令:
ps aux|head -1
ps aux|grep -v PID|sort -rn -k +3|head

可以使用一下命令查使用内存最多的10个进程

查看占用cpu最高的进程

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

或者top (然后按下M,注意这里是大写)

查看占用内存最高的进程

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

或者top (然后按下P,注意这里是大写)

该命令组合实际上是下面两句命令:

ps aux|head -1
ps aux|grep -v PID|sort -rn -k +3|head

其中第一句主要是为了获取标题(USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND)。
接下来的grep -v PID是将ps aux命令得到的标题去掉,即grep不包含PID这三个字母组合的行,再将其中结果使用sort排序。
sort -rn -k +3该命令中的-rn的r表示是结果倒序排列,n为以数值大小排序,而-k +3则是针对第3列的内容进行排序,再使用head命令获取默认前10行数据。(其中的|表示管道操作)

补充:内容解释

PID:进程的ID
USER:进程所有者
PR:进程的优先级别,越小越优先被执行
NInice:值
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称

、可以使用以下命令查使用内存最多的K个进程

方法1:

ps -aux | sort -k4nr | head -K

如果是10个进程,K=10,如果是最高的三个,K=3

说明:ps -aux中(a指代all——所有的进程,u指代userid——执行该进程的用户id,x指代显示所有程序,不以终端机来区分)

        ps -aux的输出格式如下:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  19352  1308 ?        Ss   Jul29   0:00 /sbin/init
root         2  0.0  0.0      0     0 ?        S    Jul29   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Jul29   0:11 [migration/0]

     sort -k4nr中(k代表从第几个位置开始,后面的数字4即是其开始位置,结束位置如果没有,则默认到最后;n指代numberic sort,根据其数值排序;r指代reverse,这里是指反向比较结果,输出时默认从小到大,反向后从大到小。)。本例中,可以看到%MEM在第4个位置,根据%MEM的数值进行由大到小的排序。

     head -K(K指代行数,即输出前几位的结果)

     |为管道符号,将查询出的结果导到下面的命令中进行下一步的操作。

方法2:top (然后按下M,注意大写)

二、可以使用下面命令查使用CPU最多的K个进程

方法1:

ps -aux | sort -k3nr | head -K

方法2:top (然后按下P,注意大写

Je suppose que tu aimes

Origine blog.csdn.net/ClearLoveQ/article/details/109239726
conseillé
Classement