HCRM博客

如何在CentOS系统中查看进程?

在CentOS操作系统中,查看进程是系统管理和故障排除的重要任务之一,本文将详细介绍如何使用各种命令来查看系统中的进程,包括ps、top、pgrep等命令,并解释其输出信息和使用方法。

一、使用ps命令查看进程

1. ps aux命令

如何在CentOS系统中查看进程?-图1
(图片来源网络,侵权删除)

ps aux命令用于显示当前所有正在运行的进程,该命令的输出包括每个进程的PID(进程ID)、TTY(终端类型)、TIME(累计CPU时间)、CMD(命令行)等信息。

ps aux

输出示例:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START    TIME COMMAND
root         1  0.0  0.1  22564  1328 ?        Ss   09:27   0:01 /sbin/init
...

2. ps ef命令

ps ef命令以全格式显示所有进程,包括用户、进程ID、父进程ID、CPU和内存使用情况等详细信息。

ps ef

输出示例:

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Sep09 ?        00:00:05 /sbin/init
root       769   757  0 10:17 ?        00:00:00 /usr/sbin/rsyslogd n
...

3. ps u username命令

如何在CentOS系统中查看进程?-图2
(图片来源网络,侵权删除)

ps u username命令用于查看指定用户运行的所有进程,要查看用户“vivek”运行的所有进程:

ps u vivek

输出示例:

UID        PID  PPID  C STIME TTY          TIME CMD
vivek     1234  1233  0 10:20 pts/0    00:00:01 bash
...

4. ps p pid命令

ps p pid命令用于查看指定进程ID的详细信息,要查看PID为1234的进程:

ps p 1234 o pid,ppid,cmd,%cpu,%mem

输出示例:

  PID  PPID CMD       %CPU %MEM
1234     1 /usr/bin/firefox  2.5 12.3

二、使用top命令查看进程

top命令提供了实时更新的系统状态视图,包括CPU和内存使用情况、运行中的进程列表及其资源消耗,输入top命令后,界面会每三秒刷新一次,按q键退出top命令。

如何在CentOS系统中查看进程?-图3
(图片来源网络,侵权删除)
top

输出示例:

top 10:20:30 up 1 day,  2:34,  2 users,  load average: 0.00, 0.01, 0.05
Tasks: 123 total,   1 running, 122 sleeping,   0 stopped,   0 zombie
%Cpu(s):  2.5 us,  1.0 sy,  0.0 ni, 96.0 id,  0.5 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  2048 total,   845 used,  1203 free,   234 buffers
KiB Swap:  2048 total,    0 used,  2048 free.   1234 cached Mem
PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
1234 root      20   0  123456   65432   12345 S   2.5  3.2   0:10.23 firefox
...

三、使用pgrep命令查找进程

pgrep命令用于根据进程名称查找进程ID,要查找名为“sshd”且属于root用户的所有进程:

pgrep u root sshd

输出示例:

1234
5678

四、使用pstree命令查看进程树

pstree命令以树状结构显示进程之间的关系,如果指定了用户名,则以用户所拥有的进程作为根节点。

pstree

输出示例:

systemd(1)─┬─ModemManager(687)
           ├─accountsdaemon(769)
           ├─agetty(865)
           ├─cgmanager(829)
           ├─cgroup(830)─┬─dockerd(1234)─┬─containerdshim(1235)─┬─dockercontainerdctr(1236)
           │             │              ├─dockercontainerdshim(1237)
           │             │              └─dockercontainerdshim(1238)
           ├─cron(856)
           ├─dbusdaemon(771)
           ├─dnsmasq(893)
           ├─fail2banserver(967)
           ├─flanneld(979)
...

五、使用htop命令查看进程

htop是一个交互式的进程查看工具,类似于top,但功能更强大,可以垂直和水平滚动查看所有进程及其命令行,安装htop的命令如下:

yum install htop

启动htop

htop

输出示例:

  1  [  1.2%] Tasks: 123, CPUs: 4* Mem: 2G total, 1G free Uptime: 1 day, 2:34
Load Avg: 0.00, 0.01, 0.05  Tasks: 123, Total: 245; 123 running; 122 sleeping;   0 stopped;   0 zombie
PID USER      PRI NI    VIRT    RES    SHR S CPU% MEM%     TIME+ COMMAND
1234 root      20   0 123456   65432   12345 S   2.5 3.2   0:10.23 firefox
...

六、使用atop命令查看系统负载

atop是一个交互式监控工具,可以显示系统层级的关键硬件资源使用情况,如CPU、内存、硬盘和网络,输入以下命令启动atop

atop

输出示例:

System Summary on atop (every 10 sec) as of Mon Oct  2 10:20:30 2023
Resources: scale=auto us, underruns=0, press 'h' for help and 'q' to quit.
CtrlA for sort order (reverse with Shift), '=' for more columns, 'X' for fewer columns.
CPU states usage: [user:10.5%, sys:5.2%, idle:84.3%, wait:0.0%] (sum=100%)
CPU core states: [core1: user=10.5%, sys=5.2%, idle=84.3%, wait=0%] ... [coreN]
Memory: TOTAL=2G USED=1G FREE=1G (buffers=234M)
Swap: TOTAL=2G USED=0K FREE=2G (cached=1234K)
Disks: HDIO=1.2K/s, CDIO=0.0K/s, DISKFULL=0%, DISKREAD=2.3K/s, DISKWRIT=0.0K/s, DISKFREE=1.2G/s, DISKTRIM=0K/s, DISKCACHE=1234K/s ...
NetIfaces: lo=0K/s, enp0s3=1.2K/s, wlp2s0=2.3K/s ...
Procs: total=123, threads=456 (running=1, sleeping=455) ...
Tasks: total=123, running=1, sleeping=122, idle=0, zombie=0 ...
...

通过上述命令,用户可以全面了解CentOS系统中的进程状态和管理方法,以下是一些最佳实践建议:

1、定期监控:使用tophtop命令定期监控系统状态,及时发现异常进程。

2、合理使用优先级:通过nicerenice命令调整进程优先级,确保关键任务优先执行。

3、日志分析:定期检查/var/log目录下的日志文件,如messagessecure,获取系统和进程的关键信息。

4、自动化管理:利用systemd进行服务管理,提高系统稳定性和效率。

5、调试工具:掌握stracegdb等调试工具,排查进程问题。

6、资源限制:使用ulimitcgroups技术设置进程的资源限制,防止单个进程过度占用系统资源。

熟练使用这些命令和工具,可以帮助系统管理员和开发人员更好地管理和优化CentOS系统,确保系统的高效稳定运行。

分享:
扫描分享到社交APP
上一篇
下一篇