ps-top

ps

top

nice

free

screen

程序与进程

程序是静态的(文件),进程是动态的(运行的程序)

 

进程和线程:

一个程序至少有一个进程,一个进程至少有一个线程。

进程之间内存是独立的

线程之间内存共享。高并发好一些  安全性差一些。

 

查看进程树:

pstree  树形结构显示系统进程信息

[[email protected] ~]# pstree

init-+-NetworkManager

     |-abrtd

     |-acpid

     |-atd

     |-auditd---{auditd}

     |-automount---4*[{automount}]

-p 显示进程号

[[email protected] ~]# pstree-p |more

init(1)-+-NetworkManager(1321)

        |-abrtd(1618)

        |-acpid(1412)

        |-atd(1637)

        |-auditd(1227)---{auditd}(1228)

        |-automount(1489)-+-{automount}(1490)

        |                 |-{automount}(1491)

        |                 |-{automount}(1494)

        |                 `-{automount}(1497)

 

 

显示目录树形结构  tree

[[email protected] ~]# rpm-ivh /mnt/Packages/tree-1.5.3-2.el6.x86_64.rpm

warning:/mnt/Packages/tree-1.5.3-2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, keyID c105b9de: NOKEY

Preparing...                                                   ########################################### [100%]

 

[[email protected] ~]# tree/boot

/boot

├── config-2.6.32-431.el6.x86_64

├── efi

│   └── EFI

│       └── redhat

│           └── grub.efi

├── grub

│   ├──device.map

│   ├──e2fs_stage1_5

│   ├──fat_stage1_5

│   ├──ffs_stage1_5

│   ├── grub.conf

│   ├──iso9660_stage1_5

│   ├──jfs_stage1_5

│   ├── menu.lst-> ./grub.conf

 

 

列出目前所有正在内存当中的进程

ps

1ps a显示现行终端机下的所有程序,包括其他用户的程序。
2
ps-A   显示所有程序。
3
psc    列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
4
ps -e  此参数的效果和指定"A"参数相同。
5
pse   列出程序时,显示每个程序所使用的环境变量。
6
psf    ASCII字符显示树状结构,表达程序间的相互关系。
7
ps-H    显示树状结构,表示程序间的相互关系。
8
ps-N   显示所有的程序,除了执行ps指令终端机下的程序之外。
9
pss     采用程序信号的格式显示程序状况。
10
psS     列出程序时,包括已中断的子程序资料。
11
ps -t <终端机编号>  指定终端机编号,并列出属于该终端机的程序的状况。
12
ps u以用户为主的格式来显示程序状况。
13
ps x显示所有程序,不以终端机来区分。

 

manps

       ps - report a snapshot of the currentprocesses. 报告当前进程的快照

 

[[email protected]~]# ps -aux

Warning:bad syntax, perhaps a bogus ‘-‘? See /usr/share/doc/procps-3.2.8/FAQ

USER        PID %CPU %MEM    VSZ  RSS TTY      STAT START   TIME COMMAND

root          1 0.0  0.1  19356 1536 ?        Ss   11:08  0:01 /sbin/init

root          2 0.0  0.0      0    0 ?        S    11:08  0:00 [kthreadd]

 

USER   运行此进程的用户名

PID     该process的号码

%CPU   该process使用cpu资源的百分比

%MEM  该process所占用的物理内存百分比

VSZ           该process使用掉的虚拟内存量(kbytes

RSS           该process占用的固定的内存量 (kbytes

TTY            该process是在哪个终端机上面运作。若与终端机无关,则显示“?”。另外tty1-tty6是本机上面的登入者程序,若为pts/0等等的 则表示为网络连接进主机的程序。

STAT                   该程序目前的状态,linux进程有5种基本状态:

  R:(正在运行或在运行队列中等待)

 S:该程序目前正在睡眠当中,但可能被某些讯号(signal)唤醒。

 T:该进程目前暂停了

 

例: vim a.txt 按下 ctrl+z  (将进程转到后台,并使之挂起)

ctrl-c是发送 SIGINT信号,终止一个进程

ctrl-z是发送SIGSTOP信号,挂起一个进程

ps-aux | grep vim

[[email protected]~]# ps -aux | grep vim

Warning:bad syntax, perhaps a bogus ‘-‘? See /usr/share/doc/procps-3.2.8/FAQ

root       3460 0.2  0.3 143660  3340 pts/1   T    14:41  0:00 vim a.txt

root       3462 0.0  0.0 103252   824 pts/1   S+   14:42   0:00 grep vim

 

Z :该程序应该已经终止,但是其父程序却无法正常的终止它。造成zombie(僵尸)程序的状态

不可中断状态  了解

 

         < 高优先级的

         N低优先级的

         L有内存分页但是带锁

         s包含子进程

         l多线程

         +前台程序()

 

START该 process 被触发启动的时间

TIME该process 实际使用CPU运作的时间

COMMAND:该程序的实际指令

 

了解 : ps -ef

 

ps -aux 是用BSD的格式来显示进程。

ps -ef 是用标准的格式显示进程

 

 

top   动态查看进程

统计信息区前五行是系统整体的统计信息

1 第一行是任务队列信息

同uptime命令的执行结果

[[email protected]~]# uptime

 14:30:44 up 1:13,  2 users,  load average: 0.05, 0.01, 0.00

 

14:30:44                         当前时间

up  1:13                         系统运行时间,格式为时:分

2users                           当前登录用户数

loadaverage: 0.05, 0.01, 0.00    系统负载,即任务队列的平均长度。三个数值分别为1分                                    钟、5分钟、15分钟前到现在的平均值。

                           

 

一般来说,每个CPU内核当前活动进程数不大于3,则系统运行良好。如果主机时四核cpu的话,那么只要uptime最后输出的一串字符数值小于4*3=12 即表示系统负载不是很严重

 

2 第二、三行为进程和CPU信息

[[email protected]~]# top

top- 15:10:10 up  1:52,  2 users, load average: 0.00, 0.00, 0.00

Tasks: 136total,   1 running, 136 sleeping,   0 stopped,  0 zombie

Cpu0  : 0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa, 0.0%hi,  0.0%si,  0.0%

Mem:   1004412k total,   324160k used,   680252k free,    40040k buffers

Swap:   204792k total,        0k used,   204792k free,   151096k cached

 

当有多个CPU时,这些内容可能会超过两行。内容如下

Tasks:136 total           进程总数

1running                  正在运行的进程数

136 sleeping              睡眠的进程数

0stopped                  停止的进程数

0zombie                   僵尸进程数

 

Cpu(s):  0.0%us           系统用户进程使用CPU百分比。不包括调高优先级的进程。CPU% 是                           由每个核的CPU占用率之和算出来的。如果你是4核CPU1 cpu使用                           率为100% 核2 cpu使用率为100% ,则会出现cpu高于100%的象 最                           终为200%        

0.3%sy                    内核中进程占用cpu百分比           

0.0%ni                    用户进程空间内改变过优先级的进程占用的cpu百分比

99.7%id                   空闲cpu百分比

 

第四五行 为内存信息

Mem:   1004412k total      物理内存总量

324160kused                使用的物理内存总量

680252kfree                空闲的内存总量

40040kbuffers              用做内核缓存的内存量和 free -k 一个意思

Swap:   204792k total      交换分区总量

0kused                     使用的交换分区总量

204792kfree                空闲交换分区总量

151096kcached             缓冲的交换分区总量。内存中的内容被换出到交换区,而后又被还                           如到内存,但使用过的交换区尚未被覆盖,该数值即为这些内容已                           存在于内存中的交换区大小。相应的内存再次被换出时可不必再对                           交换区写入。

 

 

进程信息

PID                                进程id

USER                               进程所有者的用户名

NI                                 nice值(进程优先级)。负值表示高优先级,正值小时低优先级

RES                                实际使用内存大小

                                   进程状态

                                   D=不可中断的睡眠状态

S                                  R=运行       T=跟踪/停止       Z=僵尸进程

 

%CPU                               上次更新到现在的CPU时间占用百分比

%MEM                               进程使用的物理内存百分比

TIME+                              进程使用的CPU时间总计,单位1/100

COMMAND                            命令名/命令行

 

top 快捷键

q 退出

按内存排序

P   cpu 排序

默认3s刷新一次  按空格立即刷新

<> 上下翻页

 

控制(关闭)进程

kill       向进程发送信号(停止进程)

1 HUP      重新加载配置文件。类似重启

2  INT     ctrl+c 一样   一般用于通知前台进程组终止进程

9  KILL    强行终端

19 STOP     ctrl +Z 一样

[[email protected] ~]# ps -aux | grep top

Warning: bad syntax, perhaps a bogus ‘-‘? See/usr/share/doc/procps-3.2.8/FAQ

root      2530  0.5 0.1  15036  1216 tty1    S+   09:36   0:00 top

root      2555  0.0  0.0 103252  820 pts/0    S+   09:37  0:00 grep top

[[email protected] ~]# kill -9 2530

[[email protected] ~]# ps -aux | grep top          pgerp -l  httpd

Warning: bad syntax, perhaps a bogus ‘-‘? See/usr/share/doc/procps-3.2.8/FAQ

root      2559  0.0  0.0 103252  820 pts/0    S+   09:38  0:00 grep top

 

[[email protected] ~]# ps aux | grep httpd    多进程时

root      2609  0.0 0.3 184284  3832 ?        Ss  09:42   0:00 /usr/sbin/httpd

apache    2612  0.0  0.2 184284 2436 ?        S    09:42  0:00 /usr/sbin/httpd

apache    2613  0.0  0.2 184284 2436 ?        S    09:42  0:00 /usr/sbin/httpd

apache    2614  0.0  0.2 184284 2436 ?        S    09:42  0:00 /usr/sbin/httpd

apache    2615  0.0  0.2 184284 2436 ?        S    09:42  0:00 /usr/sbin/httpd

 

[[email protected] ~]# pkill httpd     killall  httpd

[[email protected] ~]# ps -aux | grep httpd

Warning: bad syntax, perhaps a bogus ‘-‘? See/usr/share/doc/procps-3.2.8/FAQ

pkill killall 通过程序名字 直接杀死所有进程

或者 杀掉父进程  kill 2609

 

优先级控制

nice    -20 ~19  越小优先级越高   普通用户 0 - 19

作用: 以什么优先级运行进程。 默认优先级是0

 

# vim a.txt 出现

Found a swap file by name".a.txt.swp"

    rm -rf   .a.txt.swp      kill 进程是不管用的

 

[[email protected] ~]# vim a.txt      top NI 0

nice -n -5 vim a.txt

 

[[email protected] ~]# ps -aux | grep vim

Warning: bad syntax, perhaps a bogus ‘-‘? See/usr/share/doc/procps-3.2.8/FAQ

root      3177  0.0 0.3 143660  3336 pts/1    T<  10:29   0:00 vim a.txt

root      3184  0.0  0.0 103252  820 pts/1    S+   10:29  0:00 grep vim

 

[[email protected] ~]# top -p 3177 

   PIDUSER      PR  NI  VIRT RES  SHR S %CPU %MEM    TIME+

  3177root      15  -5  140m 3336 2188 T  0.0 0.3   0:00.03

 

 

renice #修改正在运行的进程的优先级

renice -n 5 PID   修改进程优先级

 

nice -n -5 vim a.txt

[[email protected] ~]# ps -aux | grep vim

Warning: bad syntax, perhaps a bogus ‘-‘? See/usr/share/doc/procps-3.2.8/FAQ

root      3230 0.5  0.3 143660  3336 pts/1   T<   10:37   0:00 vim a.txt

root      3232  0.0  0.0 103252  820 pts/1    S+   10:37  0:00 grep vim

 

[[email protected] ~]# top -p 3230    

  PIDUSER      PR  NI VIRT  RES  SHR S %CPU %MEM    TIME+

  3230root      25   -5  140m 3336 2188 T  0.0 0.3   0:00.03

[[email protected] ~]# renice -n 5 3230

3230: old priority -5, new priority 5

 

[[email protected] ~]# top -p 3230

  PIDUSER      PR  NI VIRT  RES  SHR S %CPU %MEM    TIME+

  3230root      25   5 140m 3336 2188 T  0.0  0.3  0:00.03

 

 

了解

前后台进程切换

jobs  列出所有后台进程

[[email protected] ~]# vim a.txt &

[1] 3282

[[email protected] ~]# jobs

[1]+  Stopped                 vim a.txt  #[1] 后台进程 序列号

 

fg 后台程序改到前台

用法 fg 后台进程 id

fg  1

 

 

查看内存

free /proc

 

free 查看系统内存量

-m MB 显示

 

 

buffers  #缓存从磁盘读出来的内容

cached  #缓存需要写入磁盘的内容

 

例:

[[email protected] ~]# free -m

            total       used       free    shared    buffers     cached

Mem:          980        649        331          0         61        393

-/+ buffers/cache:        194        785

Swap:         199          0        199

 

运行

[[email protected] ~]# find /     #在另一终端查看buffers增加速度

 

[[email protected] ~]# dd if=/dev/zero of=a.txtbs=10M count=10  在另一终端查看cache的增加速度

 

[[email protected] ~]# free

            total       used       free    shared    buffers     cached

Mem:      1004412     664844     339568          0     63012     402448

-/+ buffers/cache:     199384    805028

Swap:      204792          0     204792

 

[[email protected] ~]# free

            total       used       free    shared    buffers     cached

Mem:      1004412      A          B        0         C         D

-/+ buffers/cache:          X         Y

Swap:      204792          0     204792

 

X=A-C-D

Y=B+C+D

 

 

screen 实战后台实时执行命令备份命令

[[email protected] ~]# rpm -ivh/mnt/Packages/screen-4.0.3-16.el6.x86_64.rpm

warning:/mnt/Packages/screen-4.0.3-16.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, keyID c105b9de: NOKEY

Preparing...                                                    ###########################################[100%]

  1:screen                                                    ########################################### [100%]

 

1 直接在命令行键入screen命令

[[email protected] ~]# screen

 

暂时中断会话

screen窗口键入 ctrl+a+d  screen 会给出 detached(分离)提示

直接关闭当前pts 

 

[[email protected] ~]# screen -ls    #列出分离的会话

There is a screen on:

       5448pxs-0.xuegod63     (Detached)

1 Socket in /var/run/screen/S-root.

 

[[email protected] ~]# screen -r 4086   #重新连接会话

时间: 2024-10-10 10:57:30

ps-top的相关文章

linux ps top 命令 VSZ,RSS,TTY,STAT, VIRT,RES,SHR,DATA的含义

linux ps top 命令 VSZ,RSS,TTY,STAT, VIRT,RES,SHR,DATA的含义 linuxpstop http://javawind.net/p131 VIRT:virtual memory usage 虚拟内存 1.进程“需要的”虚拟内存大小,包括进程使用的库.代码.数据等 2.假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量 RES:resident memory usage 常驻内存 1.进程当前使用的内存大小,但不包

进程管理工具之ps top详解

ps # 静态进程查看PS: # 命令格式: #           ps aux 查看系统所有进程 ps –l:仅仅查看自己的bash相关的进程 [[email protected] proc]# ps -l F S  UID   PID  PPID  CPRI  NI ADDR SZ WCHAN  TTY         TIME CMD 4 S    0 26672 26657  0  80   0- 27148 wait   pts/2    00:00:01 bash 4 R    0

ps/top/htop/dstat/命令

PS命令: ps命令用来列出系统中当前运行的哪些进程 /proc/:内核中的状态信息 内核参数: 可设置从而调整内核运行特性的参数:/proc/sys目录下 状态变量:其用于输出内核中统计信息或状态信息,仅用于查看参数:模拟成文件系统类型: 进程:/proc/#: #:PID ps - report a snapshot of the current processes. ps[options]选项 启动进程方式: 系统启动过程中自动启动:与终端无关进程 用户通过终端启动:与终端相关的进程 选项

ps,top,htop,dstat命令的使用

ps命令: report a snapshot of the current processes /proc/:内核中的状态信息: 内核参数:可设置其值从而调整内核运行特性的参数:/proc/sys/ 状态变量:用于输出内核中统计信息或状态信息,仅用于查看: 参数:被模拟成文件系统类型: 进程: /proc/# #:代表数字,为进程的PID: 例如: ]# ls /proc/1/:表示系统的父进程,里面的文件都代表内核参数: 内核参数就是保存当前系统状态的: ]# cat /proc/1/cmd

Linux进程管理和系统监控ps,top

在Linux下进程查看和进程管理是经常使用的命令,我们可以使用ps来查看上一个状态中,各进程的信息,也可以通过top命令来实时的查看进程的属性信息.可以通过kill来管理进程运行,通过调整renice值来调整进程的优先级. 而htop.dstat.glances则是非常优秀Linux的系统监控命令,接下来就一步一步介绍他们的使用. ps的使用 查看ps是shell内置的命令还是外部命令 [[email protected] ~]# type psps is /bin/ps 由上可知ps是外部命令

Linux命令:ps / top

简介:ps - report a snapshot of the current processes. 用途:获取当前时刻程序运行状态 概要:ps [options] 类型:ps is hashed (/bin/ps) 说明: ps获取到的是某一时刻程序运行状态的静态信息,如果想要动态获取程序运行信息,可使用top命令. ps的帮助文档信息太多,记住常用的两个: ps -l # 仅列出与用户当前bash有关的程序,即当前bash程序是其它程序的最上层父程序 ps aux # 列出系统所有程序 简

进程命令ps/top/kill

进程: 通俗的说就是 当前正在执行的一个程序 命令: ps 英文: process status 作用: 查看进程的详细状况 选项: a:显示终端上的所有进程,包括其他用户的进程 u:显示进程的详细状况 x:显示没有控制终端的进程 使用: # 查看当前用户通过终端启动的进程 ps # 查看所有用户的进程详细 ps au  命令: top 作用: 动态显示运行中的进程并且排序 使用: # 动态查看进程 top # 退出查看进程 q 命令: kill 作用: 终止指定代号的进程 选项: -9:强制终

ps top 命令

pstree :显示进程树 ps: a:查看和终端有关的进程 u:显示进程是哪个用户启动的 x:和终端无关 ps aux |head 进程的分类: 和终端有关 和终端无关 进程状态: D:不可中断睡眠 R:运行或者就绪 S:可中断睡眠 T:停止 Z:僵尸 < :高优先级 N :低优先级 +: 前台进程组中的进程 l:多线程进程 s: 会话进程首进程 pgrep:命令以名称为依据从运行进程队列中查找进程,并显示查找到的进程id #只显示进程号 pgrep bash top:实时动态的查看系统运行状

pstree,ps,top,htop,vmastp,pmap,glances,dstat进程管理工具介绍

htop,glances,dstat进程管理工具介绍 1.htop 工具 htop常用交互命令 M:以memory排序 P:以cpu占用比排序 T:以cpu占用时长排序 u:过滤仅显示选定用户的进程: s:跟踪选定的进程所发起的系统调用: l:显示指定进程打开的文件 t:显示进程树格式 a:将选定的进程绑定在指定的CPU上 2.glances: glances[-bdehmnrsvyz1] [-B bind] [-c server] [-C conffile] [-p port] [-P pas

linux 系统上的进程查看管理工具之htop/dstat/top/ps命令详解

     进程查看管理工具之ps/top/dstat/htop命令详解 一.ps命令详解: ps 加选项参数 ps a 显示与终端相关的内容信息,例如: [[email protected] cx]# ps a PID TTY      STAT   TIME COMMAND 2396 tty3     Ss+    0:00 /sbin/mingetty /dev/tty3 2399 tty4     Ss+    0:00 /sbin/mingetty /dev/tty4 2401 tty5