linux服务以及进程

linux 2018-08-18 浏览(1884 评论(0

vmstat:

实例:
    procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
     r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
     0  0      0  72088 241748 929864    0    0     0    19    2    3  1  0 99  0  0
说明:
    procs:进程
        r:表示运行队列(也就是说多少个进程真的分配到cpu)
        b:表示阻塞的进程数
    memory:内存
        swpd:虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了
        free:空闲的物理内存的大小
        buff:用来存储,目录里面有什么内容,权限等的缓存
        cache:直接用来记忆我们打开的文件,给文件做缓存
    swap:交换
        si:每秒从磁盘读入虚拟内存的大小
        so:每秒虚拟内存写入磁盘的大小
    io:块设备
        bi:块设备每秒接收的快数量
        bo:快设备每秒发送的块数量
    system:系统
        in:每秒cpu的中断次数,包括时间中断
        cs:每秒上下文切换次数
    cpu:中央处理器
        us:用户cpu时间
        sy:系统CPU时间
        id:空闲CPU时间,一般来说,id+us+sy=100
        wa:等待IO的CPU时间
        st:虚拟机占用的时间百分比,一般不用关心

w:

作用:what的简写,当前系统在干什么
结果:
     15:48:49 up 132 days, 1 min,  1 user,  load average: 0.00, 0.00, 0.00
    USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
    root     pts/0    125.111.45.91    08:46    0.00s  0.17s  0.00s w
说明:
    第一行:系统当前时间,开机持续时间,登录用户个数,平均负载(1/5/10)
    其他行:用户|终端|来源|登录时间|空闲时间|使用时间|当前进程时间|正在做
    

top:

使用:
    1.w的详细显示,每三秒刷新一次
    2.shift+m可以按照所占内存排序
    3.q退出检测
结果:
    top - 15:58:10 up 132 days, 10 min,  1 user,  load average: 0.00, 0.00, 0.00
    Tasks: 102 total,   1 running, 101 sleeping,   0 stopped,   0 zombie
    Cpu(s):  1.7%us,  0.3%sy,  0.0%ni, 98.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:   1938596k total,  1868864k used,    69732k free,   241760k buffers
    Swap:        0k total,        0k used,        0k free,   931748k cached

    PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND 
    
说明:
    第一行:功能通w
    
    第二行:任务信息
    
        Tasks:展示了目前的进程总数及所处状态,要注意zombie,表示僵尸进程,不为0则表示有进程出现问题。
        
    第三行: cpu信息
    
        cpu:展示了当前CPU的状态
        
            us:表示用户进程占用CPU比例,

            sy:表示内核进程占用CPU比例,

            id:表示空闲CPU百分比,如果系统缓慢而这个值很高,说明系统慢的原因不是CPU负载高;

            wa:表示IO等待所占用的CPU时间的百分比。wa占用超过30%则表示IO压力很大。

            hi:CPU处理硬件终端所占时间的比率;

            si:CPU处理软件终端所占时间的比率;

            st:流逝的时间,虚拟机中的其他任务所占CPU时间的比率;

            用户进程占比高,wa低,说明系统缓慢的原因在于进程占用大量CPU,通常还会伴有教低的id,说明CPU空转时间很少;

            wa低,id高,可以排除CPU资源瓶颈的可能。 

            wa高,说明I/O占用了大量的CPU时间,需要检查交换空间的使用,交换空间位于磁盘上,性能远低于内存,当内存耗尽开始使用交换空间时,将 会给性能带来严重影响,所以对于性能要求较高的服务器,一般建议关闭交换空间。另一方面,如果内存充足,但wa很高,说明需要检查哪个进程占用了大量的 I/O资源。
            
    第四行:内存信息
        Mem行展示了当前内存的状态,total是总的内存大小,userd是已使用的,free是剩余的,buffers是目录缓存。
    
    第五行:交换分区
        Swap行同Mem行,cached表示缓存,用户已打开的文件。如果Swap的used很高,则表示系统内存不足。
    
    其它行:
        PID:进程号
        USER:用户
        PR:优先级  
        NI:NICE
        VIRT:虚拟内存总量
        RES:虚拟内存中,未被交换的物理内存
        SHR:共享内存大小
        S:进程状态(S:停止,R:运行)
        %CPU:CPU占用百分比
        %MEM:内存占用百分比
        TIME+:CPU使用时间
        COMMAND:进程名/命令

free

说明:查看内存使用
选项:-h 显示信息

ps:

说明:查看进程
选项:
    a:显示控制终端的所有进程
    u:显示用户信息
    x:显示没有控制终端的进程
实例:ps aux(ps aux | grep  nginx)

kill

说明:杀死一个进程
选项:-9,强制结束进程
实例:kill -9 PID 

htop

有名的过程监控。它有一个漂亮又多彩的命令行界面。一些有用的键绑定:

\过滤器
/搜索
,选择排序条件
k发送杀死信号
u用户过滤结果
t打开/关闭树模式
-和+ 折叠 / 展开选定的流程树
H关闭显示线程

打赏

如果此文对你有所帮助,请随意打赏鼓励作者^_^

黄信强博客