Maison >Problème commun >Comment vérifier ce que fait le processus sous Linux
Comment vérifier ce que font les processus sous Linux : 1. commande ps, qui peut répertorier tous les processus de l'utilisateur actuel ; 2. commande top, qui peut afficher l'état des processus du système en temps réel ; une version améliorée de top et peut fournir des fonctions plus interactives ; 4. commande pstree, qui peut afficher la relation entre les processus dans une structure arborescente ; 5. commande lsof, qui peut afficher les fichiers ouverts et les connexions réseau dans le système actuel.
L'environnement d'exploitation de cet article : système Linux 5.18.14, ordinateur DELL G3.
1. Dans le système Linux, vous pouvez utiliser la commande suivante pour afficher les processus en cours en détail :
1. Commande ps : La commande ps peut lister tous les processus de l'utilisateur actuel. Les paramètres couramment utilisés incluent -a, -u, -x, etc. Par exemple, utilisez la commande ps -aux pour répertorier les informations détaillées de tous les processus, y compris l'ID du processus, l'ID du processus parent, l'utilisateur, l'utilisation du processeur, l'utilisation de la mémoire, etc.
2. Commande top : La commande top peut afficher le processus système en temps réel. La liste des processus peut être actualisée en temps réel via une interface interactive et triée de différentes manières. Vous pouvez utiliser la commande top -c pour afficher la ligne de commande complète d'un processus.
3. Commande htop : htop est une version améliorée de top, qui peut fournir des fonctions plus interactives et peut être utilisée à l'aide de la souris. htop peut également afficher des informations détaillées sur les processus.
4. Commande pstree : La commande pstree peut afficher la relation entre les processus dans une structure arborescente. Vous pouvez utiliser la commande pstree -p pour afficher le PID du processus.
5. Commande lsof : La commande lsof peut afficher les fichiers ouverts et les connexions réseau dans le système actuel. Utilisez le paramètre -l pour afficher des informations détaillées sur le processus, y compris le PID du processus et l'utilisateur du processus.
En bref, les commandes ci-dessus peuvent toutes être utilisées pour afficher les processus en cours, et différentes commandes conviennent à différentes occasions. Choisissez simplement la commande appropriée en fonction de vos besoins.
2. La signification de chaque statut de processus
1. R : En cours d'exécution
signifie que le processus est en cours d'exécution ou en attente dans la file d'attente autorisée.
2. S : Interruption
signifie que le processus est en veille Lorsqu'une certaine condition est formée ou qu'un signal est reçu, il quittera l'état interrompu.
3. D : Ininterruptible
signifie que le processus ne répond pas aux signaux asynchrones du système et ne peut pas être interrompu même avec la commande kill.
4. Z : Zombie
signifie que le processus est terminé, mais que le descripteur de processus existe toujours jusqu'à ce que le processus parent appelle la fonction système wait(4) pour libérer le processus.
5. T : Stop
signifie que le processus s'arrête après avoir reçu le signal d'arrêt.
3. Statut
[root@mycentos ~]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 191120 3588 ? Ss 2021 25:59 /usr/lib/systemd/systemd --system --deserialize 19 root 2 0.0 0.0 0 0 ? S 2021 0:00 [kthreadd] root 4 0.0 0.0 0 0 ? S< 2021 0:00 [kworker/0:0H] root 6 0.0 0.0 0 0 ? S 2021 1:51 [ksoftirqd/0] root 7 0.0 0.0 0 0 ? S 2021 0:00 [migration/0] root 8 0.0 0.0 0 0 ? S 2021 0:00 [rcu_bh] 1、USER:进程的所有者 2、PID: 进程ID号 3、%CPU:运算器占用率 4、%MEM:内存占用率 5、VSZ: 虚拟内存使用量,单位KB 6、RSS: 占用的固定内存量,单位KB 7、TTY: 所在终端 8、STAT:进程状态 9、START: 进程被启动的时间 10、TIME: 实际使用CPU的时间 11、COMMEND: 命令名称和参数
4. La commande top est utilisée pour surveiller dynamiquement l'activité des processus et les informations sur la charge du système. La commande
top est assez puissante et peut afficher dynamiquement l'état de fonctionnement et de maintenance du système.
1. La signification de chaque ligne du top
[root@mycentos ~]# top top - 13:45:38 up 267 days, 14:36, 1 user, load average: 0.01, 0.06, 0.05 Tasks: 107 total, 1 running, 106 sleeping, 0 stopped, 0 zombie %Cpu(s): 1.3 us, 1.3 sy, 0.0 ni, 97.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1881820 total, 92160 free, 631276 used, 1158384 buff/cache KiB Swap: 0 total, 0 free, 0 used. 1037740 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 20797 root 10 -10 148748 20952 6844 S 2.0 1.1 191:48.06 AliYunDun 6728 redis 20 0 143200 2684 1268 S 0.3 0.1 17:55.69 redis-server 11156 rabbitmq 20 0 1820368 74484 2644 S 0.3 4.0 106:56.41 beam.smp 29954 polkitd 20 0 52812 2340 700 S 0.3 0.1 40:13.73 redis-server 1 root 20 0 191120 3588 2044 S 0.0 0.2 26:00.01 systemd 备注: top 命令执行结果的前5行为系统整体的统计信息 1、第1行:系统时间、运行时间、登录终端数量、系统负载(3个数值分别表示: 1分钟,5分钟,15分钟内的平均负载值,数值越小意味着负载越低)。 2、第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。 3、第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、 空闲的资源百分比。(这一行中的数据均为 cpu 数据并以百分比格式显示, 比如:"97.3 id"表示有 97.3%的CPU处理器资源处于空闲) 4、第4行:物理内存总量、内存空闲量、内存使用量、作为内核缓存的内存量。 5、第5行:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量。
5. Afficher l'ID de processus d'un service
[root@mycentos ~]# pidof mysqld 27748 备注: pidof 服务名称 pidof 命令用于查询某个指定服务进程的PID 值。 每个进程的进程号(PID)是唯一的, 因此可以通过PID来区分不同的进程。.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!