每个进程都有一个进程号叫做pid,进程分为前台和后台进程。前台进程有交互的例如top命令,后台进程一般有系统进程例如mysql等。
查看当前系统正在执行的进程情况。
ps options
options 参数
-a 显示当前终端的所有进程信息
-u 以用户的格式显示进程信息
-x 显示后台进程运行的参数
-e 显示全部进程
-f 全格式
运行ps命令查看如下
[root@localhost ~]# ps
PID TTY TIME CMD
1322 pts/0 00:00:00 bash
1361 pts/0 00:00:00 ps
PID 进程号
TTY 终端机号
TIME 进程所使用cpu的时间
CMD 正在执行的命令或进程号
STAT 状态
STARTED 进程启动的时间
VSZ 进程占用虚拟内容大小
RSS 进程占用物理内存大小
%CPU 进程占用cpu的百分比
%MEM 进程占用物理内存的百分比
UID 用户ID
PPID 父进程ID
C cpu用于计算执行优先级的因子,数值越大,表明进程是cpu密集型运算执行优先级会降低;数值越小,表明进程I/O密集型运算,执行优先级会提高。
STIME 进程启动的时间
终止进程。一个进程再执行中需要停止,或进程消耗了很大的系统资源时,则可以考虑终止进程。
kill options pid
options参数说明
-9 强制停止进程
终止进程下所有子进程。
killall 进程名称(支持通配符)
以树状显示进程。 如果执行pstree命令找不到,则安装yum install -y psmisc
即可。
pstree options
options 参数
-p 显示进程的pid
-u 显示进程的所属用户
执行之后的结果:
[root@localhost ~]# pstree -u
systemd─┬─NetworkManager───2*[{NetworkManager}]
├─VGAuthService
├─agetty
├─auditd───{auditd}
├─chronyd(chrony)
├─crond
├─dbus-daemon(dbus)───{dbus-daemon}
├─firewalld───{firewalld}
├─lvmetad
├─master─┬─pickup(postfix)
│ └─qmgr(postfix)
├─polkitd(polkitd)───6*[{polkitd}]
├─rsyslogd───2*[{rsyslogd}]
├─sshd───sshd───bash───pstree
├─systemd-journal
├─systemd-logind
├─systemd-udevd
├─tuned───4*[{tuned}]
└─vmtoolsd───{vmtoolsd}
[root@localhost ~]# pstree -p
systemd(1)─┬─NetworkManager(740)─┬─{NetworkManager}(747)
│ └─{NetworkManager}(750)
├─VGAuthService(696)
├─agetty(739)
├─auditd(673)───{auditd}(674)
├─chronyd(705)
├─crond(728)
├─dbus-daemon(702)───{dbus-daemon}(719)
├─firewalld(738)───{firewalld}(865)
├─lvmetad(509)
├─master(1185)─┬─pickup(1371)
│ └─qmgr(1193)
├─polkitd(695)─┬─{polkitd}(714)
│ ├─{polkitd}(720)
│ ├─{polkitd}(722)
│ ├─{polkitd}(723)
│ ├─{polkitd}(725)
│ └─{polkitd}(730)
├─rsyslogd(1051)─┬─{rsyslogd}(1054)
│ └─{rsyslogd}(1056)
├─sshd(1047)───sshd(1318)───bash(1322)───pstree(1480)
├─systemd-journal(485)
├─systemd-logind(721)
├─systemd-udevd(521)
├─tuned(1049)─┬─{tuned}(1295)
│ ├─{tuned}(1296)
│ ├─{tuned}(1298)
│ └─{tuned}(1300)
└─vmtoolsd(697)───{vmtoolsd}(734)
ps -ef | grep sshd
执行上面命令之后,结果如下,PPID就是父进程ID。
[root@localhost ~]# ps -ef | grep sshd
root 1047 1 0 18:49 ? 00:00:00 /usr/sbin/sshd -D
root 1318 1047 0 19:20 ? 00:00:00 sshd: root@pts/0
root 1387 1322 0 20:41 pts/0 00:00:00 grep --color=auto sshd