运维之基础命令--进程管理 进程程序:安装包 进程:正在运行的实例 CPU:计算 内存:存储CPU计算使用的临时数据 存储: 进程和线程 僵尸进程和孤儿进程 僵尸进程:进程生命周期结束了,但是PID未被回收 孤儿进程:父进程生命周期结束了,但是子进程未结束,子进程被系统进程接收 1、查看进程 # 命令:ps, 默认查看当前进程 # 参数 -a : 查询所有进程 -x : 查看后台所有的进程 -u : 查看进程的用户 USER : 开启当前进程的用户 PID : 当前进程的ID号 %CPU : CPU的使用率 %MEM : 内存使用率 VSZ : 进程启动时默认向计算机申请的内存 RSS : 进程运行时实际使用的内存 TTY : 进程运行的终端 ?: 后台运行(没有终端) tty:使用系统终端 pts:使用虚拟终端 STAT :进程运行状态 R : 正在运行中的进程 + : 在前台运行 S : 睡眠中状态 D : 不可中断睡眠 T : 停止状态 Z : 僵尸状态 X : 死掉的进程 < : 优先级较高的进程 N :优先级较低的进程 s : 包含子进程 yum install psmisc -y l : 已线程的方式运行 | : 代表管道 START : 进程的启动时间 TIME : 占用CPU的时间 COMMAND : 进程执行的命令 -e : 显示所有的进程 -f : 格式化输出同时显示PPID PPID : 父进程ID 2、top # 根据一定频率的去监控系统 up前是系统时间 up后是开启的时间 load average: 0.01, 0.42, 0.73 0.01 : 一分钟平均负载 0.42 : 五分钟平均负载 0.73 : 十五分钟平均负载 平均负载: # CPU加压工具 stress --cpu [需要加压的系统核心数] --timeout [加压的时间] # CPU 性能加压工具 ## 添加epel源(epel源主要用来安装红帽系列操作系统附加软件) yum install stress -y # CPU 性能分析工具 yum install sysstat -y mpstat -P ALL 3 # 进程性能分析⼯具 pidstat -u 1 5 Tasks Tasks: 125 total, 1 running, 124 sleeping, 0 stopped, 0 zombie total : 当前系统一共运行的是125个进程 running : 正在运行的是1个 sleeping : 124个处于睡眠状态 stopped : 停止运行的进程数 zombie :僵尸进程数 %Cpu0 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st us :在单位时间进程使用CPU所占用的时间百分比 sy : 在单位时间内系统进程占用CPU时间百分比 ni : 在单位时间内优先使用CPU所占时间百分比 id :在单位时间内CPU空闲所占时间百分比 wa : 在单位时间内CPU阻塞态所占CPU时间的百分比 hi : 硬件中断 si : 软件中断 st : 其他占用CPU时间百分比 KiB Mem : 2027892 total, 1234180 free, 176352 used, 617360 buff/cache total :系统总内存 free :系统空闲内存 used : 系统使用内存 buff/cache : 缓存使用内存 avail Mem : PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND PID : 进程编号 USER : 启动进程的用户 PR : 优先级 NI :nice值 VIRT : 虚拟内存 RES : 使用内存 SHR : 共享内存 %CPU : cpu使用率 %MEM :内存使用率 3、top快捷键 按1 : 展示所有的CPU的详情 按s : 设置top监控频率(默认3秒) 按m : 按照内存排序 按z : 添加颜色 按p : 按照CPU排序 按l : 展示CPU总负载(默认显示) 4、top的参数 -d : 设置top的刷新频率 -p : 设置查看的进程PID top -d 1 -p `pgrep nginx | head -1` -u : 查询指定用户的经常的进程 top -u oldboy -n : 表示查询n次 top -d 0.1 -u oldboy -n 20 [epel] name=Extra Packages for Enterprise Linux 7 - $basearch baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/$basearch #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch failovermethod=priority enabled=1 gpgcheck=0 [epel-debuginfo] name=Extra Packages for Enterprise Linux 7 - $basearch - Debug baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/$basearch/debug #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch failovermethod=priority enabled=0 gpgcheck=0 [epel-source] name=Extra Packages for Enterprise Linux 7 - $basearch - Source baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/SRPMS #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch failovermethod=priority enabled=0 gpgcheck=0 运维 > (一)基础命令 运维之基础命令--进程管理 http://gsproj.github.io/2022/07/06/01_运维/01-基础命令/day16-进程管理/笔记/ 作者 GongSheng 发布于 2022年7月6日 许可协议 运维之基础命令--sudo和su 上一篇 运维之基础命令--文件ACL 下一篇