Heim >häufiges Problem >So überprüfen Sie, was der Prozess unter Linux tut

So überprüfen Sie, was der Prozess unter Linux tut

百草
百草Original
2023-07-11 13:19:324731Durchsuche

So überprüfen Sie, welche Prozesse unter Linux ausgeführt werden: 1. Befehl ps, der alle Prozesse des aktuellen Benutzers auflisten kann; 2. Befehl top, der den Prozessstatus des Systems in Echtzeit anzeigen kann; eine verbesserte Version von top und bietet mehr interaktive Funktionen; 4. pstree-Befehl, der die Beziehung zwischen Prozessen in einer Baumstruktur anzeigen kann; 5. lsof-Befehl, der offene Dateien und Netzwerkverbindungen im aktuellen System anzeigen kann;

So überprüfen Sie, was der Prozess unter Linux tut

Die Betriebsumgebung dieses Artikels: Linux 5.18.14-System, DELL G3-Computer.

1. Im Linux-System können Sie den folgenden Befehl verwenden, um die laufenden Prozesse im Detail anzuzeigen:

1. Der ps-Befehl kann alle Prozesse des aktuellen Benutzers auflisten. Zu den häufig verwendeten Parametern gehören -a, -u, -x usw. Verwenden Sie beispielsweise den Befehl ps -aux, um detaillierte Informationen zu allen Prozessen aufzulisten, einschließlich Prozess-ID, ID des übergeordneten Prozesses, Benutzer, CPU-Auslastung, Speichernutzung usw.

2. Top-Befehl: Der Top-Befehl kann den Systemprozess in Echtzeit anzeigen. Die Prozessliste kann über eine interaktive Oberfläche in Echtzeit aktualisiert und auf verschiedene Arten sortiert werden. Mit dem Befehl top -c können Sie die vollständige Befehlszeile eines Prozesses anzeigen.

3. htop-Befehl: htop ist eine verbesserte Version von top, die mehr interaktive Funktionen bietet und mit der Maus bedient werden kann. htop kann auch detaillierte Informationen zu Prozessen anzeigen.

4. pstree-Befehl: Der pstree-Befehl kann die Beziehung zwischen Prozessen in einer Baumstruktur anzeigen. Mit dem Befehl pstree -p können Sie die PID des Prozesses anzeigen.

5. lsof-Befehl: Der lsof-Befehl kann offene Dateien und Netzwerkverbindungen im aktuellen System anzeigen. Verwenden Sie den Parameter -l, um detaillierte Informationen zum Prozess anzuzeigen, einschließlich der PID des Prozesses und des Benutzers des Prozesses.

Kurz gesagt, die oben genannten Befehle können zum Anzeigen laufender Prozesse verwendet werden, und verschiedene Befehle eignen sich für verschiedene Anlässe. Wählen Sie einfach den entsprechenden Befehl entsprechend Ihren Anforderungen aus.

2. Die Bedeutung jedes Prozessstatus

1. R: Wird ausgeführt

bedeutet, dass der Prozess ausgeführt wird oder in der zulässigen Warteschlange wartet.

2. S: Unterbrechen

bedeutet, dass der Prozess schläft. Wenn ein bestimmter Zustand vorliegt oder ein Signal empfangen wird, wird er den unterbrochenen Zustand verlassen.

3. D: Ununterbrechbar

bedeutet, dass der Prozess nicht auf asynchrone Signale des Systems reagiert und auch mit dem Kill-Befehl nicht unterbrochen werden kann.

4. Z: Zombie

bedeutet, dass der Prozess beendet wurde, der Prozessdeskriptor jedoch weiterhin existiert, bis der übergeordnete Prozess die Systemfunktion wait(4) aufruft, um den Prozess freizugeben.

5. T: Stop

bedeutet, dass der Prozess nach Erhalt des Stoppsignals stoppt.

3. Status

[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. Der oberste Befehl wird verwendet, um Prozessaktivität und Systemlastinformationen dynamisch zu überwachen. Der Befehl

top ist sehr leistungsfähig und kann den Betriebs- und Wartungsstatus des Systems dynamisch anzeigen.

So überprüfen Sie, was der Prozess unter Linux tut

1. Die Bedeutung jeder Zeile von oben

[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. Sehen Sie sich die Prozess-ID eines Dienstes an

[root@mycentos ~]# pidof mysqld 
27748
 
 
备注:
pidof 服务名称
 
pidof 命令用于查询某个指定服务进程的PID 值。 每个进程的进程号(PID)是唯一的,
    因此可以通过PID来区分不同的进程。

Das obige ist der detaillierte Inhalt vonSo überprüfen Sie, was der Prozess unter Linux tut. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn