centos7进程管理

什么是进程

进程是已启动的可执行程序的运行实例,是程序运行的过程,动态的,有生命周期及运行状态。


程序: 二进制文件,静态

静态查看进程

查看进程(一)

[root@zaotounan ~]# ps aux

ps :process nsapashot 进程管理
参数解释:

a 只能查看系统里面运行的所有终端进程
u 显示进程拥有者
x 显示系统内所有进程
f 显示进程之间的父子关系

查询显示解析
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

============================================================================

USER: #运行进程的用户
PID: #进程ID
%CPU: #CPU占用率
%MEM: #内存占用率
VSZ 进程占用的虚拟内存大小。
RSS 占用的物理内存大小
TTY: ? 表示没有占用终端
R 运行
S 可中断睡眠 Sleep
D 不可中断睡眠
T 停止的进程
Z 僵尸进程
X 死掉的进程
STAT: #进程状态
Sl 以线程的方式运行
Ss s进程的领导者,父进程
R+ +表示是前台的进程组
S< <优先级较高的进程
SN N优先级较低的进程
START: #进程的启动时间
TIME: #进程占用CPU的总时间
COMMAND: #进程文件,进程名

查看进程(二)

[root@zaotounan ~]# ps -ef

参数解释:

-e 显示所有进程
-l 长格式显示
-f 完整格式

查询显示解析
UID PID PPID C STIME TTY TIME CMD

=================================================================

UID 用户ID
PID 进程ID
PPID 父进程ID
C CPU占用率
STIME 开始时间
TTY 开始此进程的TTY----终端设备
TIME 此进程运行的总时间
CMD 命令名

查看单个PID

[root@zaotounan ~]#ps aux | grep 需要查看的进程名


grep:过滤

root@zaotounan \~\]# pgrep 需要查看的进程名 ​ \[root@zaotounan \~\]# pidof 需要查看的进程名

[root@zaotounan ~]# yum -y install lsof #安装软件包

root@zaotounan \~\]# lsof -i:端口号 ​ #注意:端口号只有整数,范围是从0 到65535 ​ 参数解释: FD: 文件描述符,应用程序通过文件描述符识别该文件。 DEVICE: 指定磁盘的名称 SIZE: 文件的大小

[root@zaotounan ~]# yum -y install net-tools #安装软件包

root@zaotounan \~\]# netstat -nplt ​ ​ \[root@zaotounan \~\]# ss -nplt ​ ​ 参数详解: -a 显示全部的进程 -u 显示udp -n 以数字的新式显示协议名称 -t tcp -p 显示进程的名称和pid -l 只显示正在被监听的端口 ​ 参数解释: recv-Q:网络接收队列。表示收到的数据已经在本地接收缓冲,但是还有多少没有被进程取走,recv()如果接收队列Recv-Q一直处于阻塞状态,可能是遭受了拒绝服务 denial-of-service 攻击。 send-Q:网路发送队列。对方没有收到的数据或者说没有Ack的,还是本地缓冲区.如果发送队列Send-Q不能很快的清零,可能是有应用向外发送数据包过快,或者是对方接收数据包不够快。 Foreign Address:与本机端口通信的外部请求 ###### 看已经登陆到终端的进程信息,远程登陆会有ip 地址 \[root@zaotounan \~\]# w ​ USER TTY FRO LOGIN@ IDLE JCPU PCPU WHAT ========================================================= ​ 部分参数解释: USER --登录用户名. TTY --登录用户使用的终端名. FROM --登录用户来源的主机名或IP地址. LOGIN@ --用户登录时间. WHAT --用户当前的进程及选项/参数。 部分参数解释: USER --登录用户名. TTY --登录用户使用的终端名. FROM --登录用户来源的主机名或IP地址. LOGIN@ --用户登录时间. WHAT --用户当前的进程及选项/参数。

动态显示信息,三秒刷新一次。

[root@zaotounan ~]#top


参数解析

load average: 0.00, 0.01, 0.02
在工作中必须监控的东西 load average(平均负载)等待cpu处理的队列长度 也是个数。

1分钟 第一个数字
5分钟 第二个数字
15分钟 第三个数字

计算cpu负载:load average的三个值: 0.00, 0.01, 0.02,分别除cpu的个数,得出的值,如果值大于1那么那时候的负载高

======================

%Cpu(s): 0.0 us, 1.6 sy, 0.0 ni, 98.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 7990068 total, 7291012 free, 516976 used, 182080 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 7239164 avail Mem

us: 用户态进程占用cpu

sy 系统态进程占用cpu
ni: nice 值
id: cpu 空闲率
wa: cpu 等待,等待输入/输出的进程占用的 CPU 百分比。如果使用率过高,表示硬盘该换了
hi: 硬中断,请求插队
si: 软中断
st: 停止

top操作

[root@zaotounan ~]# top


h|? 帮助
> 往下翻页
< 往上翻页
M 按内存排序
P 按cpu排序
q 退出
z 彩色显示
W 保存

PR 优先级
VIRT 进程使用的虚拟内存总量,单位kb。
RES 进程使用的、未被换出的物理内存大小,单位kb。
SHR 共享内存大小,单位kb

动态查看进程结果不打印到终端

命令安装
[root@zaotounan ~]# yum -y install htop
执行命令
[root@zaotounan ~]# htop
退出
ctrl +z

进程优先级 nice

nice 值越高:表示优先级越低,例如+19,该进程容易将CPU 使用量让给其他进程。

nice 值越低:表示优先级越高,例如-20,该进程更不倾向于让出CPU。

修改进程优先级

root@zaotounan \~\]# renice -n -10 pid

按pid杀死进程

kill,pkill

语法: kill 信号 PID #信号也是进程间通信的一种方式

root@zaotounan \~\]# kill -l #查看所有信号 ​ 常用参数解析 -1 HUP 重新加载进程或者重新加载配置文件,PID不变 -9 KILL 强制杀死 -15 TERM 正常杀死(这个信号可以默认不写) -18 CONT 激活进程 -19 STOP 挂起进程

1.[root@zaotounan ~]# 作业号 &

作业开始及挂载

jobs #查看后台的工作号


2.[root@zaotounan ~]# 作业 Crtl +z 暂停

[root@zaotounan ~]# bg %工作号 #让暂停的程序在后台运行,%是用来修饰job number,2就是job number。(程序的工作号)

root@zaotounan \~\]# fg %作业号 #将后台的程序调到前台 ​ 3.\[root@zaotounan \~\]# kill -9 %工作号 #通过kill杀死进程 ​ \[root@zaotounan \~\]# nohup 作业名 \& \>/文件 如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。 ​

希望能够帮助到大家!

相关推荐
只微1 分钟前
Vim常用快捷键
linux·编辑器·vim
背着黄油面包的猫11 分钟前
搭建hadoop集群模式并运行
大数据·hadoop·分布式
StarRocks_labs22 分钟前
StarRocks 助力首汽约车精细化运营
大数据·数据库·starrocks·spark·数据查询·存算分离
菌菌的快乐生活27 分钟前
SSL证书颁发机构有哪些呢
网络·网络协议·ssl
时间裂缝里的猫-O-27 分钟前
@linux系统SSL证书转换(Openssl转换PFX)
linux·运维·ssl
盐焗星球40 分钟前
小型园区网实验
服务器·网络安全
青云交1 小时前
Java 大视界 -- 基于 Java 的大数据分布式缓存技术在电商高并发场景下的性能优化(181)
大数据·性能优化·高并发·电商·分布式缓存·java 大数据·缓存框架
华山令狐虫1 小时前
DBAPI设置服务器开机自启动
linux·运维·服务器
阿虎儿1 小时前
docker及编排设置环境变量有哪些方式
linux·docker·容器
依旧风轻1 小时前
深入解析 Jenkins Agent 的 .jnlp 启动文件
运维·ios·jenkins·agent·slave