进程管理工具使用
Posted ckh2014
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程管理工具使用相关的知识,希望对你有一定的参考价值。
pstree、ps、pidof、pgrep、top、htop
一、 pstree - display a tree of processes
1 yum install psmisc //软件包包含命令pstree、killall、fuser
二、ps - report a snapshot of the current processes
用法:ps [options]
u:以用户为中心组织进程状态信息显示
a: 与终端相关的进程
x: 与终端无关的进程
-e: 显示所有进程
-f: 显示完整格式程序信息
-F: 显示完整格式的进程信息
-H: 以进程层级格式显示进程相关信息
实例:
[[email protected] ~]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.6 193468 6576 ? Ss 13:49 0:01 /usr/lib/systemd/systemd --switched-root --system root 2 0.0 0.0 0 0 ? S 13:49 0:00 [kthreadd]
各条目含义:
USER: 进程属主
PID:进程ID
%CPU: CPU占用时间比
%MEM: 内存占用时间比
VSZ:virtual memory size,虚拟内存集
RSS:ReSident Size,常驻内存集
TTY: 终端
START: 进程状态
R:running
S: interruptable sleeping
D: uninterruptable sleeping
T: stopped
Z: zombie
+: 前台进程
l:多线程进程
N:低优先级进程
<: 高优先级进程
s: session leader
START: 启动时间
TIME: 进程占用CPU的累计时长
COMMAND:进程由哪条命令运行起来的
[[email protected] ~]# ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0 13:49 ? 00:00:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 2 root 2 0 0 13:49 ? 00:00:00 [kthreadd]
各条目含义:
UID: 进程属主id
PID: 进程id
PPID:父进程id
C: CPU编号
STIME: start time
TTY:终端
TIME:进程占用CPU累计时长
[[email protected] ~]# ps -eFH UID PID PPID C SZ RSS PSR STIME TTY TIME CMD root 2 0 0 0 0 1 13:49 ? 00:00:00 [kthreadd] root 3 2 0 0 0 0 13:49 ? 00:00:00 [ksoftirqd/0]
ps -eo {pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,comm}
ps -axo {stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm}
ni:nice值
pri: priority,优先级
psr: processor,CPU
rtprio: 实时优先级
三、pgrep, pkill - look up or signal processes based on name and other attributes
用法:pgrep [options] pattern pkill [options] pattern -u uuid: effective user,有效用户id -U uuid:real user,实际用户id -t terminal: 与指定终端相关的进程 -l: 显示进程名 -a: 显示完整格式的进程名 -P pid:显示其父进程为此处指定的进程的进程列表
四、pidof -- find the process ID of a running program,根据进程名获取其PID
五、top - display Linux processes,动态显示进程状态
[[email protected]len ~]# top
top - 19:43:38 up 5:53, 3 users, load average: 0.00, 0.01, 0.05 Tasks: 117 total, 1 running, 114 sleeping, 2 stopped, 0 zombie %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni, 99.8 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 997980 total, 454352 free, 154824 used, 388804 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 647980 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 703 root 20 0 298712 6112 4784 S 0.3 0.6 0:24.18 vmtoolsd 1 root 20 0 193468 6576 4088 S 0.0 0.7 0:02.07 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
内置命令:
排序:
P:以占据的CPU百分比排序
M:以占据的内存百分比排序
T:以累计占据CPU时长排序
首部信息显示与关闭:l键
Tasks及cpu信息显示与关闭:t键
cpu分别显示:数字1
memory信息: m键
修改刷新时间间隔:s键
终止指定进程:k键
退出命令:q键
选项:
-d #: 指定刷新时间间隔,默认为3秒
-b: 以批次方式显示
-n #: 显示多少批次
第一行:
top - 19:43:38 up 5:53, 3 users, load average: 0.00, 0.01, 0.05
当前系统时长 运行时长 当前系统登录的用户数 平均负载(过去一分钟、五分钟、十五分钟)
第二行:
Tasks: 117 total, 1 running, 114 sleeping, 2 stopped, 0 zombie
运行的进程数 运行状态的进程数 睡眠态的进程数 停止态的进程数 僵死态的进程数
第三行
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni, 99.8 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st
用户空间程序占用的百分比 内核空间 nice值 空闲比例 wait等待io完成的时间 处理硬件中断 处理软中断(模式切换) 虚拟化技术所使用的时间
第四行
KiB Mem : 997980 total, 454352 free, 154824 used, 388804 buff/cache
物理内存总空间 空闲空间 已用空间 buff和cache占据的空间
KiB Swap: 2097148 total, 2097148 free, 0 used. 647980 avail Mem
总空间 空闲空间 可用空间
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
进程号 进程属主 优先级 nice值 虚拟内存集 常驻内存集 共享内存大小 进程状态
以上是关于进程管理工具使用的主要内容,如果未能解决你的问题,请参考以下文章
java 简单的代码片段,展示如何将javaagent附加到运行JVM进程
LINUX PID 1和SYSTEMD PID 0 是内核的一部分,主要用于内进换页,内核初始化的最后一步就是启动 init 进程。这个进程是系统的第一个进程,PID 为 1,又叫超级进程(代码片段