htop

    可以监视和控制进程。top功能虽然强大,但是一个古老的命令了。htop是为了替代top而产生的。htop功能更加强大,在htop程序中可以对进程发送信号,如kill进程,还支持鼠标点击操作,显示也更加直观,CPU,内存使用情况可以用LED的方式显示出来。与top一样,输入htop命令打开,但htop没有默认安装。其rpm包在fedora的EPEL源,源代码位于第三方源代码托管站。我在附件中传有源代码包和32位以及64rpm包。下面开始介绍使用方法。######htop监视的每例都例都是什么,可以参考top。都差不多了。

子命令

    F1:显示帮助,怎么叫有用呢?那是相当有用了!

   按键操作: 按两次Esc键退回主菜单。

    q:退出htop。需要在主菜单才可以退出。

    u:以用户查看进程,可以看到以那个用户身份下运行了那些进程。

    s:显示光标所在的进程执行的系统调用。

    l:显示光标所在进程都打开了那此文件。

    a:绑定一个进程运行于那几个或那一个cpu上。cpu排序从0开始,第一颗cpu的序号就是0,第二颗为1.(为什么要绑定:可以从某些方面提升性能。不过重启此进程后会失效)

    F3或/:使用名称根据Command例搜索

    F4或\:根据名称来过滤进程,只会显示与名称匹配的进程。可能在伪终端下输入字符错误,想删除输入字符后按Ctrl+Backspace组合键才有用。我用的XShell,putty没有这种现像。搜索完成,再次按F4,然后再按Esc键可以清空输入的字符串。文笔不好,一点东西写这么多!!

    F5或t:以进程树的方式显示。可以看到每个进程的上下级关系。

    F6:选择一例,以选择的例进行排序。

    P:根据cpu使用率排序

    M:根据内存使用率排序

    T:根据运行时长排序

    K:kernel进程的显示与隐藏

    H:监视或不监视线程

    F9:向一个进程发送信号,用的最多的就是杀死此进程了。



做个小演示:

    1,绑定ping进程运行在第一个cpu上。2,并且让cpu使用情况以LED方式显示,3,查看下ping都打开了那些文件。

  1,绑定ping进程运行在第一个cpu上

    我们先ping 一下网关,然后看下ping这个进程在那个cpu上运行。

    # ping 192.168.1.1   #打开一个终端让它一直ping着。

  

#ps aux | grep ping  #找到ping进程的进程ID

wKioL1PZEbKCC4UZAAB53WxtvK0720.jpg

# watch -n 1 "ps ao pid,psr | grep 41885" #监视ping在那个cpu上工作

wKiom1PZEJnAu6qFAAAyZWzbGBg573.jpg

    spacer.gif  后面的1代表在第二个cpu上工作。计数从0开始。前面为进程id。

 #htop   #打开htop程序,下面就是主菜单啦。这里打开第三个终端执行的htopspacer.gif

wKioL1PZEbShkvhcAAW-6HXQbzM990.jpg

按下F4搜索ping

wKiom1PZEJqAkAs_AACrhXihKgo961.jpg

然后再按F4键隐藏此搜索,按a按进入调整菜单。进入后上下键选择,空格键选择是否在此cpu上运行,回车键确认并退出。

wKioL1PZEbXSOnMeAAB9MqZS2NU095.jpg

这里计数是从1开始的。

然后再查看刚才监视那个终端,执行ping指令的cpu变了。

wKiom1PZEJvzUrkWAAAo7tPK4vo637.jpg


2,并且让cpu使用情况以LED方式显示,

    在主菜单按下F2键,把光标移动到Setup例的Meters(默认就是),Left column下的CPUs 使用回车键切换,每切换一次上面的显示方式就会变换一次,选择完成后按Esc退出。

wKioL1PZEbWCoF8gAAHU-kJSH5E362.jpg


3,查看下ping都打开了那些文件。

在主菜单按f4搜索ping。然后再f4隐藏搜索,按l键。如下图,ping命令本身文件所在目录,依赖库,运行在那个终端都显示出来了。

wKiom1PZEJyjz188AAGVd6h5zfs510.jpg

htop就到这儿吧!!反正f1够用了。


dstat

    实时监视CPU,磁盘,网卡,内存页面,system等,dstat是使用pythone开发的程序,支持众多插件,可以监视mysql等这样的进程。dstat可以替换?stst系统监控命令。按ctrl+c退出。

    dstat命令的选项

        dstat 1 :每隔一秒显示一次

        dstat 1 5:每隔一秒显示一次,显示5次后退出。

        -c:只显示cpu信息

        -m:显示内存使用信息

        -g:显示内存页面信息

        -s:显示交换内存信息

        -d:只显示磁盘信息

        -D /dev/sda :只显示指定磁盘信息

        -l:显示系统负载信息

        -n:显示网接口统计信息。

        --top-cpu:在监视那一刻,使用cpu最多的进程。

        --top-io:在监视那一刻,使用IO最多的进程。

        --ipc:显示进程间通信。消息队例(msg),旗语(sem),共享内存(shm)

                spacer.gif

# dstat 1 3  #第一秒显示一次,一共显示三次

wKioL1PZEbeyRteZAADHHn8GSm4889.jpg

# dstat --ipc   #显示进程间通信。消息队例(msg),旗语(sem),共享内存(shm)

wKioL1PZEbbQXKf9AAA2o6RK5e8769.jpg