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...]
lftpget http://www.baidu.com/1.cfg 下载
-c Continue a previous download.
-d Debug output.
-v Verbose messages.
wget命令:非交互式下载器
wget [option]... [URL]...
-b:在后台执行下载,一般用于脚本
-q不显示下载进度
-O file:下载的文件的保存位置
-c断点续传
--limit-rate=amount:以指明的速度下载文件
浙公网安备 33010602011771号