CentOS进程管理
1.如何触发进程
触发进程有俩种:
ping www.baidu.com >> /dev/null &
启动一个服务,比如安装了httpd服务,启动后也会同样出发进程(systemctl命令来启动)
systemctl status httpd
2.分析进程的拥有者
直接执行的时候,大部分情况下(系统命令、脚本程序),这种是谁触发谁就是拥有者
ps -ef | grep httpd
用httpd服务做例子:
3.PS命令
当ps不带任何参数的时候,查看的是当前终端的所有进程。
PID:2022 每一个进程都有一个唯一的1D值,这个就叫PID
TTY:pts/0 这个是动态终端,是在哪个终端上触发的进程,如果一个进程是依赖于某个pts,那么这个pts结束,该pts上的所有进程都会结束!
TTY:?就是与终端无关的进程,即后台服务,意味着他不依赖于终端。
TIME:进程从触发开始执行的时间
CMD:一个进程一定是有起源的,而这个起源是通过触发哪个可执行文件得到的,可以用which去查看
ps -lf就能查看比较详细的信息:
PID:进程的唯一标识符
PPID:父进程ID
PRI:进程的优先级
进程的优先级(PRI,真的优先级)=PRI (内核分配的优先级,不能调整) +NICE值的结果(手动可调)
默认我们的NICE值为0,它的范围是[-20。 19]
调整优先级仅仅能够调整NICE值,对于普通进程,内核优先级为80(由内核分配,不能调整)。
由于现在硬件的发展以及系统机制的优化,优先级对于系统调度的影响,已经没有以前那么大了!
STIME:就是这个进程触发的时间
平常用最多的ps -aux
pstree:查看进程之间的关联关系
由于系统默认没有安装pstree,所以会有pstree:command not found
#安装pstree dnf install psmisc
top:动态查看系统资源
命令通常用法:top -d 1 -n 1
-d:时间间隔(秒)
-n:刷新次数