Linux 进程管理

ps [选项]

 -A:显示系统中所有进程的信息

 -l: 以长格式显示进程信息

 -e: 显示所有进程信息

 -f: 显示完整信息

 -r: 正在运行的进程

 -a: 与终端相关进程

 -u: 以用户熟悉格式显示

-x: 与终端无关的进程

-p: 显示由进程ID指定的进程信息

-t: 显示指定终端上的进程信息


1:仅查看自己的BASH的相关进程

wKioL1loXs3TRd0pAAAdXGIyTgU096.png

F;表示为程序权限总结,4表示为root,若1为此子进程仅进行复制没有运行

S:为程序状态(stat),主要状态如下:

    R (Running):该程序正在运行

    S (Sleep):该程序目前正在睡眠状态(idle),但可以被唤醒(signal)。

    D :不可被唤醒的睡眠状态,通常这支程序可能在等待 I/O 的情况(ex>列印)

    T :停止状态(stop),可能是在工作控制(背景暂停)或除错 (traced) 状态;

    Z (Zombie):僵尸状态,程序已经终止但却无法被移除至内存外   

             s:会话的创建者

                            +:正在前台运行进程

                            l:多线程进程

                            <: 高优先级进程

                             N: 低有线进程     

UID/PID/PPID:代表『此程序被该 UID 所拥有/程序的 PID 号码/此程序的父程序 PID 号码』

C:代表 CPU 使用率,单位为百分比

PRI/NI:Priority/Nice 的缩写,代表此程序被 CPU 所运行的优先顺序,数值越小代表该程序越快被 CPU 运行

ADDR/SZ/WCHAN:都与内存有关,ADDR 是 kernel function,指出该程序在内存的哪个部分,如果是个 running 的程序,一般就会显示『 - 』 / SZ 代表此程序用掉多少内存 / WCHAN 表示目前程序是否运行中,同样的, 若为 - 表示正在运行中。

TTY:登陆者的终端机位置,若为远程登陆则使用动态终端介面 (pts/n); ?时为与终端无关的进程

TIME:使用掉的 CPU 时间,注意,是此程序实际花费 CPU 运行的时间,而不是系统时间

CMD:就是 command 的缩写,造成此程序的触发程序之命令为何


2:ps -ef 是用标准的格式显示进程的、其格式如下

wKioL1lmXKjxkLl3AAIQ-XYjlcQ646.jpg

其中各列的内容意思如下
UID    //用户ID、但输出的是用户名 
PID    //进程的ID 
PPID    //父进程ID 
C      //进程占用CPU的百分比 
STIME  //进程启动时间
TTY    //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。 
CMD    //命令的名称和参数


3:ps aux 是用BSD的格式来显示、其格式如下

wKiom1lmXM3iFRzRAAJ2rY1tpIY217.jpg

同ps -ef 不同的有列有
USER      //用户名 

PID      // 程序pid 号
%CPU      //进程占用的CPU百分比 
%MEM      //占用物理内存的百分比 
VSZ      //该进程使用的虚拟内存量(Kbytes) 
RSS      //该进程占用的固定内存量(Kbytes)(驻留中页的数量) 

TTY        //tty1-tty6本机上面的登入者程序,如果为pts/0, pts1等,就表示是由网络链接进入主机的程序

STAT      //进程的状态 ,有R,S,T,Z            

          R (Running):该程序正在运行

          S (Sleep):该程序目前正在睡眠状态(idle),但可以被唤醒(signal)。

          D :不可被唤醒的睡眠状态,通常这支程序可能在等待 I/O 的情况(ex>列印)

          T :停止状态(stop),可能是在工作控制(背景暂停)或除错 (traced) 状态;

          Z (Zombie):僵尸状态,程序已经终止但却无法被移除至内存外   

                  s:会话的创建者

                                      +:正在前台运行进程

                                      l:多线程进程

                                      <: 高优先级进程

                                      N: 低有线进程      

START    //该进程被触发启动时间 
TIME      //该进程实际使用CPU运行的时间

COMMAND  //运行改程序的指令


4:top

  top [-d 数字][-bnp]

     选项:

      -d :后面接秒数,就是刷新秒数,默认为5秒

       -b : 以批次方面的执行top

      -n :与 -b 搭配,意思是需要几次top的输出结果

              # tob -b -n 3   输出top3次结果并保存到top.txt里

      -p :监测指定某个pid

              # top -d 2 -p 93553  监视pid为93553这个程序


 top执行过程中可以用的按键指令:

            ?:显示在top当中可以输入的按键指

     P: 大写P 以占用CPU%大小排序

            M:大写M 以占用memory空间大小排序

            T:大定T 以cpu累积占用时间排序

             N:大写N 以pid排序

 

             l:是否显示系统的负载行。队列长度的合理区间,CPU颗数*0.7

             t: 是否显示进程摘要信息及CPU负载状态

              i:平均和单独CPU负债状态。

              m: 是否显示内在相关的状态

 

            q:退出命令

            s:修改刷新时长

             k:杀死或终止进程

wKiom1loZ9_CW2j5AACT1NA1e1I912.png

top - 00:22:51 up 752 days, 23:04, 55 users,  load average: 0.00, 0.14, 0.43

   系统时间  系统运行时长       用户数              1 ,5,15分钟平均数  

Tasks: 1054 total,   1 running, 1051 sleeping,   1 stopped,   1 zombie

  总运行程序数   运行进程   睡眠进程   停止进程   僵尸进程

Cpu(s):  0.5%us,  1.0%sy,  0.0%ni, 98.3%id,  0.1%wa,  0.0%hi,  0.1%si,  0.0%st

       us: user space 用户空间程序占用百分比

       sy: system (kernel space) 内核占用%

       ni: nice,越小越早运行

       id: idle 空闲%

       wa: wait io 等待IO占用%

       hi: hardware inerrupt 处理硬件中断占用%

       si: software interrupt 处理软件中断占用%

       st: stolen 被虚拟机“偷走”的%

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            

PID:进程号

USER:进程所有者

PR:优先级别

NI:进程优先级别数字

VIRT:进程占用的虚拟内存值

RES:进程占用的物理内存

SHR:进程使用的共享内存值

S:状态码

%CPU:占用的CPU使用率

%MEM:占用物理内在和总内存的百分比

TIME+:该进程启动后占用的总CPU时间

COMMAND:启动该进程的命令

 

pstree
pstree:显示进程状态树,pstree命令可以列出当前的进程,以及它们的树状结构。 主要选项如下。
-a:显示执行程序的命令与完整参数。
-c:取消同名程序,合并显示。
-n:以PID大小排序。
-p:显示PID。
-u:显示UID信息。
使用ps命令得到的数据精确,但数据庞大,这一点对掌握系统整体概况来说是不容易的。pstree命令正好可以弥补这个缺憾。它能将当前的执行程序以树状结构显示。pstree命令支持指定特定程序(PID)或使用者(USER)作为显示的起始。
常用的命令
pstree -a显示全部信息
pstree -p显示进程pid号

 

pidof命令:

  pidof [进程名]

   [root@centos ~]# pidof /usr/sbin/vsftpd

   3339

pgrep 命令

 语法格式:pgrep [OPTIONS] "PATTERN"

                   -U UID: 以指定用户身体运行

                   -G GID:

                   -l :显示PID号和进程名

htop:

交互命令:

     u:仅显示选定用户的进程

     s:跟踪选定的进程发起的系统调用

     l:显示选定的进程打的的文件

     t:显示进程的层次结构

     a:讲进程绑定指定的CPU上

 选项:-d # :延迟时长

       -u USERNAME:仅显示指定用户的进程

       -s COLUMN:根据指定的字段排序


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章