25-linux进程管理(二)

htop命令:top命令的升级

htop -d#:指定延迟时间间隔

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

-s colume:以指定字段进行排序
子命令:
l:显示选定的进程打开的文件列表
s:跟踪选定的进程的系统调用
f:以层级关系显示各进程状态
a:将选定的进程绑定至某指定的CPU核心
vmstat命令:报告虚拟内存统计命令
vmstat - Report virtual memory statistics
[root@Centos-7-24 ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
1  0      0 3431492   2068 417496    0    0    42    12  196  354  0  1 99  0  0
vmstat [options] [delay [count]]
[root@Centos-7-24 ~]# vmstat 2 3 --指定2秒显示一次,动态显示3次后退出
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
1  0      0 3430860   2068 417564    0    0    38    11  175  315  0  1 99  0  0
0  0      0 3430752   2068 417564    0    0     0     0   59   87  0  0 100  0  0
0  0      0 3430752   2068 417564    0    0     0     0   50   80  0  0 100  0  0
procs:
       r:等待运行的进程的个数;CPU上等待运行的任务的队列长度;
       b:处于不可中断睡眠态的进程个数,被阻塞的任务队列的长度
memory
        swpd:交换内存使用总量,0表示没有启用交换内存
        free:空闲的物理内存总量
        buff:用于buffer的内存总量
        cache:用于cache的内存总量
swap
       si:数据进入swap中的数据速率(kb/s)
       so:数据离开swap速率
io
       bi:从块设备读入数据到内存的速度(kb/s)
       bo:保存数据至块设备的速率(块设备为磁盘)
system
       in :中断速率
       cs: 上下文切换的速率
cpu
       us:用户空间所占的百分比
       sy:系统占用的百分比
       id:空闲百分比
       wa 等待io完成的百分比
       st:虚拟化占用百分比
选项
vmstat -s :显示内存统计数据
[root@Centos-7-24 ~]# vmstat -s
     4026164 K total memory
      175828 K used memory
      266012 K active memory
      172952 K inactive memory
     3430524 K free memory
        2068 K buffer memory
      417744 K swap cache
           0 K total swap
           0 K used swap
           0 K free swap
        1308 non-nice user cpu ticks
         427 nice user cpu ticks
        5771 system cpu ticks
     1464449 idle cpu ticks
        2696 IO-wait cpu ticks
           0 IRQ cpu ticks
          95 softirq cpu ticks
           0 stolen cpu ticks
      341787 pages paged in
       98020 pages paged out
           0 pages swapped in
           0 pages swapped out
     1636406 interrupts
     2929179 CPU context switches
  1603487855 boot time
        2071 forks
pmap命令:报告一个进程的内存显示表
pmap - report memory map of a process
[root@Centos-7-24 ~]# pmap 1 --显示PID为1的进程的内存空间片的位置
1:   /usr/lib/systemd/systemd --switched-root --system --deserialize 22
00005611899d6000   1420K r-x-- systemd
0000561189d39000    140K r---- systemd
0000561189d5c000      4K rw--- systemd
000056118a534000   1684K rw---   [ anon ]
00007ffa00000000    164K rw---   [ anon ]
00007ffa00029000  65372K -----   [ anon ]
00007ffa08000000    164K rw---   [ anon ]
00007ffa08029000  65372K -----   [ anon ]
00007ffa0f48b000      4K -----   [ anon ]
00007ffa0f48c000   8192K rw---   [ anon ]
00007ffa0fc8c000      4K -----   [ anon ]
00007ffa0fc8d000   9028K rw---   [ anon ]
00007ffa106f6000     16K r-x-- libuuid.so.1.3.0
00007ffa106fa000   2044K ----- libuuid.so.1.3.0
00007ffa108f9000      4K r---- libuuid.so.1.3.0
00007ffa108fa000      4K rw--- libuuid.so.1.3.0
00007ffa108fb000    240K r-x-- libblkid.so.1.1.0
-x 显示详细信息
pid:显示PID号的进程内存表
pmap文件位置:/proc/PID/maps,文件查看结果与命令一致
glances命令
A cross-platform curses-based system monitoring tool 监控工具
内建命令:
a  Sort processes automatically          b  Bytes or bits for network I/O      
c  Sort processes by CPU%                l  Show/hide alert logs              
m  Sort processes by MEM%                w  Delete warning alerts
u  Sort processes by USER                x  Delete warning and critical alerts
p  Sort processes by name                1  Global CPU or per-CPU stats        
i  Sort processes by I/O rate            I  Show/hide IP module                
t  Sort processes by TIME                D  Enable/disable Docker stats        
d  Show/hide disk I/O stats              T  View network I/O as combination    
f  Show/hide filesystem stats            U  View cumulative network I/O        
n  Show/hide network stats               F  Show filesystem free space        
s  Show/hide sensors stats               g  Generate graphs for current history
2  Show/hide left sidebar                r  Reset history                      
z  Enable/disable processes stats        h  Show/hide this help screen        
3  Enable/disable quick look plugin      q  Quit (Esc and Ctrl-C also work)    
e  Enable/disable top extended stats  
/  Enable/disable short processes name
0  Enable/disable Irix process CPU  
-b:以Byte为单位显示网上数据速率
-d:关闭磁盘I/O模块
-m:关闭mount模块
-n:关闭network模块
-t #:刷新时间间隔
-1:每个cpu的相关数据单独显示
-o{HTMLK|CSV}:指定输出格式
-f /PATH/TO/SOMEDIR:设定输出文件的位置
C/S模式下运行glances命令
服务模式:
       glances -s -B IPADDR:监听本机服务器信息
    IPADDR:本机的某地址,用于监听
客户端模式
       glances -c IPADDR 监听服务器信息
    IPADDR:是远程服务器的地址
dstat命令:生成系统资源统计工具
dstat [-afv] [options..] [delay [count]]
dstat 2 5:每2秒显示一次,显示5次退出
[root@Centos-7-24 ~]# dstat 2 5
You did not select any stats, using -cdngy by default.
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw
 0   0  99   0   0   0|  70k   24k|   0     0 |   0     0 | 329   577
 0   0 100   0   0   0|   0     0 | 105B  675B|   0     0 |  52    61
 0   0 100   0   0   0|   0     0 |  60B  382B|   0     0 |  37    43
 0   0 100   0   0   0|   0     0 |  60B  382B|   0     0 |  36    44
 0   0 100   0   0   0|   0     0 |  60B  382B|   0     0 |  36    42
 0   0 100   0   0   0|   0     0 |  60B  382B|   0     0 |  44    53
-cdngy:cpu,dsk,net,paging,system
常用选项
-c:显示CPU相关信息
    -C #,#...total,显示指定CPU的统计信息
-d:显示磁盘相关信息
    -D sda,sdb..total 显示指定的磁盘的统计信息
-g:显示page相关的速率数据
-m:内存的相关统计数据
-n:interface的相关统计数据
-r:显示io请求的相关的统计数据
-s:显示swapped的相关统计数据
--tcp
--udp
--raw
--socket
--ipc
--opt-cpu:最示最占用CPU的进程
--top-io:显示最占用io的进程
--top-mem:最占用内存的进程
--top-lantency:延迟最大的进程
kill命令:kill - terminate a process
用于向进程发送信号,以实现对进程的管理
显示当前系统可用信号
kill -l [signal]
[root@Centos-7-24 ~]# kill -l
1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1  64) SIGRTMAX
每个信号的标识方法有三种
1)信号的数字标识
2)信号的完整名称
3)信号的简写名称
向进程发信号
kill [-s signal|-p] [-q sigval] [-a] [--] pid...
kill -s 15 2500 发送信号15给PID为2500进程,结束进程
[root@Centos-7-24 ~]# ps aux |grep httpd
root       2500  0.1  0.1 230436  5212 ?        Ss   07:03   0:00 /usr/sbin/httpd -DFOREGROUND
apache     2501  0.0  0.0 230436  2984 ?        S    07:03   0:00 /usr/sbin/httpd -DFOREGROUND
apache     2502  0.0  0.0 230436  2984 ?        S    07:03   0:00 /usr/sbin/httpd -DFOREGROUND
apache     2503  0.0  0.0 230436  2984 ?        S    07:03   0:00 /usr/sbin/httpd -DFOREGROUND
apache     2504  0.0  0.0 230436  2984 ?        S    07:03   0:00 /usr/sbin/httpd -DFOREGROUND
apache     2505  0.0  0.0 230436  2984 ?        S    07:03   0:00 /usr/sbin/httpd -DFOREGROUND
root       2512  0.0  0.0 112812   968 pts/0    S+   07:06   0:00 grep --color=auto httpd
[root@Centos-7-24 ~]# kill -s 15 2500
[root@Centos-7-24 ~]# ps aux |grep httpd
root       2521  0.0  0.0 112812   972 pts/0    S+   07:09   0:00 grep --color=auto httpd
常用信号
1)SIGHUP:无须关闭进程而让其重读配置文件
2)SIGINT:中止正在运行的进程,相当于ctrl+c
15)SIGTERM :终止正在运行中的进程,一般用15号终止进程
9)SIGKILL:杀死运行中的进程;强制之意
18)SIGCONT:
19)SIGSTOP:
killall命令:根据进程名来结束所有
killall httpd:结束httpd相关所有进程
linux作业控制
job:
       前台作业(foregroud):通过终端启动,且启动后会一直占据终端;如vim,cp
       后台作业(backgroud):可以通终端启动,但启动后即转入后台运行(释放终端),如httpd
如何让作业运行于后台
1)运行中的作业
    ctrl+z
    注意:送往后台后,作业会转为停止态
2)尚未启动的作业
    #COMMAND &
注:此类作业虽然被送往后台,但其依然与终端相关;如果希望把送往后台的作业剥离与终端的关系
       #nohup COMMAND &
查看所有作业:jobs
可实现作业控制的常用命令
fg:把后台作业调出,fg #指明作业号调度
bg:将后台停止的作业继续运行 bg #
kill 终止作业      kill %#
注:kill指定作业一定要加%
进程优先级调整
可通过nice值调整优先级范围:100-139
        分别对应于:-20,19
进程启动时,其nice值为0,其优先级是120
nice命令
    以指定的nice值启动并运行命令
             nice [OPTION] [COMMAND [ARG]...]
            nice -n -5  指明优先级
            注意:仅管理员可调低nice值
renice命令
  renice [-n] priority [-gpu] identifier...调整运行中的进程优先级
renice -n NICE PID
查看Nice值和优先级
ps aux ni,pid,comm,priority,iftop,nethog
网络客户端工具
ping/lftp/ftp/wget
ping:检查网络连通信
ping -c #:发送ping包的个数
-w #:ping命令超时时长
-W #:一次ping操作中,等待对方响应的超时时长
-s #:指明ping包大小,默认64bytes
hping命令(包hping3):可以快速发送ping包
hping3 - send (almost) arbitrary TCP/IP packets to network hosts
hping --fast 1秒10个包
--fashter
--flood
-l uX多长时间发一次包
traceroute命令:路由跟踪
ftp命令
ftp:文件传输协议
ftp服务命令行客户端工具
ftp [-pinegvd] [host] 连接文件服务器
lftp命令
lftp [-d] [-e cmd] [-p port] [-u user[,pass]] [site]
lftp -u admin,passwd 172.168.0.1 指明用户名密码连接
get,mget 下载和多文件下载
put,mput 上传
delete,mdelete 删除
lftpget命令:直接从lftp上下载文件
lftpget [-c] [-d] [-v] URL [URL...]
 
        -c     Continue a previous download.
 
       -d     Debug output.
 
       -v     Verbose messages.
wget命令:非交互式下载器
wget [option]... [URL]...
-b:在后台执行下载,一般用于脚本
-q不显示下载进度
-O file:下载的文件的保存位置
-c断点续传
--limit-rate=amount:以指明的速度下载文件
posted @ 2020-10-25 10:57  扬帆直上  阅读(222)  评论(0)    收藏  举报