您的位置 首页 > 数码极客

centos如何查看某个端口的进程

不知道别人如何,我是经常用top这个命令,来查下系统进程的占据情况。如果发现,哪个进程占据异常,就去处理下。



命令说明

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态。

如果在前台执行该命令,它将独占前台,直到用户终止该程序为止。比较准确的说,top命令提供了实时的对系统处理器的状态监视。

它将显示系统中CPU最“敏感”的任务列表。该命令可以按CPU使用、内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定。

命令格式

top -参数

命令功能

显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等

命令参数

以下是top命令后可以接的参数,一般用下-u即可。

-b 是批处理

-c 是 显示完整的治命令

-I 是 忽略失效过程

-s是 保密模式

-S 是累积模式

-i 是<时间>设置间隔时间

-u是<用户名>指定用户名

-p 是<进程号>指定进程

n是<次数>循环显示的次数

命令演示



top

直接输入top,将动态显示所有进程信息。然后,摁下shift+>或者shift+<可以切换排序方式,默认以cpu占据情况排序。

[root@210789 ~]# top

top - 23:41:42 up 25 days, 10:55, 1 user, load average: 0.00, 0.00, 0.00

Tasks: 118 total, 2 running, 116 sleeping, 0 stopped, 0 zombie

%Cpu(s): 0.2 us, 0.2 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

MiB Mem : 3635.0 total, 295.2 free, 1605.4 used, 1734.4 buff/cache

MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1740.3 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

336386 memcach+ 20 0 442880 34300 1736 S 0.3 0.9 12:10.84 memcached

380953 root 10 -10 166012 33784 16232 S 0.3 0.9 77:41.24 AliYunDun

1 root 20 0 179172 11116 8168 S 0.0 0.3 0:20.15 systemd

2 root 20 0 0 0 0 S 0.0 0.0 0:00.44 kthreadd

3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_gp

4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_par_gp

6 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/0:0H-kblockd

8 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 mm_percpu_wq

9 root 20 0 0 0 0 S 0.0 0.0 0:02.06 ksoftirqd/0

10 root 20 0 0 0 0 I 0.0 0.0 2:42.80 rcu_sched

11 root rt 0 0 0 0 S 0.0 0.0 0:00.10 migration/0

12 root rt 0 0 0 0 S 0.0 0.0 0:00.02 watchdog/0

13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/0

14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/1

15 root rt 0 0 0 0 S 0.0 0.0 0:01.81 watchdog/1



16 root rt 0 0 0 0 S 0.0 0.0 0:00.10 migration/1

17 root 20 0 0 0 0 S 0.0 0.0 0:01.80 ksoftirqd/1

19 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/1:0H-kblockd

21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs

22 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 netns

23 root 20 0 0 0 0 S 0.0 0.0 0:00.10 kauditd

26 root 20 0 0 0 0 S 0.0 0.0 0:00.98 khungtaskd

27 root 20 0 0 0 0 S 0.0 0.0 0:00.00 oom_reaper

28 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 writeback

29 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kcompactd0

30 root 25 5 0 0 0 S 0.0 0.0 0:00.00 ksmd

31 root 39 19 0 0 0 S 0.0 0.0 0:04.55 khugepaged

32 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 crypto

33 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kintegrityd

34 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kblockd

35 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 tpm_dev_wq

36 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 md

37 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 edac-poller

38 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdogd

60 root 20 0 0 0 0 S 0.0 0.0 0:00.36 kswapd0

153 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kthrotld

154 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 acpi_thermal_pm

155 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kmpath_rdacd

156 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kaluad

158 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 ipv6_addrconf

159 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kstrp

413 root 0 -20 0 0 0 I 0.0 0.0 0:02.68 kworker/1:1H-xfs-log/vda1

428 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 ata_sff


top -u

输入top -u user,比如top -u apache可以显示apache的进程信息;输入top -u mysql可以显示数据库进程信息,下面举例。

[root@210789 ~]# top -u apache

top - 23:43:34 up 25 days, 10:57, 1 user, load average: 0.08, 0.05, 0.01

Tasks: 118 total, 1 running, 117 sleeping, 0 stopped, 0 zombie

%Cpu(s): 0.3 us, 0.2 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st

MiB Mem : 3635.0 total, 291.6 free, 1608.8 used, 1734.6 buff/cache

MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1736.8 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

430740 apache 20 0 2312532 305912 49332 S 0.0 8.2 0:23.45 httpd

430741 apache 20 0 2305464 306720 49784 S 0.0 8.2 0:26.47 httpd

430742 apache 20 0 2297356 290864 48532 S 0.0 7.8 0:22.91 httpd

430940 apache 20 0 2252668 251372 47936 S 0.0 6.8 0:14.52 httpd

432551 apache 20 0 2175152 137612 45244 S 0.0 3.7 0:02.32 httpd

[root@210789 ~]# top -u mysql

top - 23:44:11 up 25 days, 10:58, 1 user, load average: 0.04, 0.04, 0.01

Tasks: 117 total, 1 running, 115 sleeping, 1 stopped, 0 zombie

%Cpu(s): 0.8 us, 1.0 sy, 0.0 ni, 98.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

MiB Mem : 3635.0 total, 290.4 free, 1609.8 used, 1734.7 buff/cache

MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1735.8 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

336344 mysql 20 0 2552992 309912 25192 S 0.0 8.3 10:33.91 mariadbd

后续说明

一般有这些命令就够了,如果你有更多需求,可以更换参数,自行查看。除了文中提到的shift+<和shift+>命令切换top排序方式,在top命令窗口中,也可以使用下面的命令进行交互操作。即,在top命令下,摁下如下键,可以执行相应操作。



h:显示帮助画面,给出一些简短的命令总结说明

k:终止一个进程

i:忽略闲置和僵死进程,这是一个开关式命令

q:退出程序

r:重新安排一个进程的优先级别

S:切换到累计模式

s:改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成ms。输入0值则系统将不断刷新,默认值是5s

f或者F:从当前显示中添加或者删除项目

o或者O:改变显示项目的顺序

l:切换显示平均负载和启动时间信息

m:切换显示内存信息

t:切换显示进程和CPU状态信息

c:切换显示命令名称和完整命令行

M:根据驻留内存大小进行排序

P:根据CPU使用百分比大小进行排序

T:根据时间/累计时间进行排序

W:将当前设置写入~/.toprc文件中

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“centos如何查看某个端口的进程”边界阅读