前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux系统--Linux进程与作业管

Linux系统--Linux进程与作业管

作者头像
py3study
发布2020-01-14 17:12:40
1.4K0
发布2020-01-14 17:12:40
举报
文章被收录于专栏:python3python3

Linux系统--Linux进程与作业管理(3)

Linux进程管理和作业管理的另外几种管理命令:vmstat,dstat,pmap,glances,kill

1.vmstat命令:

 vmstat - Report virtual memory statistics

vmstat命令可以看到整个机器的CPU,内存,IO等使用情况。此命令不是动态显示的,需要手动进行刷新。

vmstat #:相隔#秒刷新。

       直接执行vmstat命令的结果为:

wKiom1YAHduRJ9upAACAKsZDovk866.jpg
wKiom1YAHduRJ9upAACAKsZDovk866.jpg

各个字段的含义:

procs:

r:等待运行的进程的个数

b:处于等待资源的进程数,比如正在等待IO或者内存交换等

memory:

swpd:交换内存的使用总量,单位KB。如果swpd的值不为0或者比较大,而si,so的值长期为0,这种情况不必担心,不会影响系统性能。

free:当前空闲的物理内存数量,单位KB

buff:buffer cache的内存数量,一般对块设备的读写才需要缓冲

cache:表示 page cache的内存数量,一般作文件系统的cached,频繁访问的文件都会被cached。如果cached值较大,说明cached文件数较多。如果此时IO的bi较小时,说明文件系统效率较好。

swap:

si:数据进入swap中的数据速率(kb/s),由磁盘点入内存

so:数据离开swap中的数据速率(kb/s),由内存调入磁盘

IO:

bi:从块设备读入数据到系统的速率(kb/s)(读磁盘)

bo:保存数据至块设备的速率:(写磁盘)

这里设置的bi+bo的参考值为1000,如果值大于1000,而且wa值比较大,则表示系统磁盘IO性能瓶颈。

stytem:

in:interrupt,中断速率

cs:context switch,上下文切换速率,进程切换速率。

CPU:

us:用户空间消耗的CPU的时间百分比

sy:内核空间消耗的CPU的时间百分比

id:CPU处于空闲状态的时间百分比

wa:IO等待所占的CPU时间的百分比

常用选项:

-f:显示从系统启动至今的fork数量

-s:显示内存先关统计信息

-d:显示磁盘相关的统计信息

-p 分区:显示磁盘分区统计信息

2.pmap命令:

pmap - report memory map of a process

pmap -x pids...

-x:显示详细格式信息。

          另一种实现:cat /proc/PID/maps

wKiom1YAH6fAs1hBAAJYXR6xhvc451.jpg
wKiom1YAH6fAs1hBAAJYXR6xhvc451.jpg

3.glances命令:

glance使用一款用户Linux命令行系统监视工具,使用Python开发,能够监视CPU,负载,内存,磁盘IO,网络流量,文件系统等信息。

glances - A cross-platform curses-based monitoring tool

常用选项:

-b:以byte为单位显示网卡数据速率

-d:关闭磁盘I/O模块

-f:/path/to/somefile:设定输入文件

-o:{HTML|CSV}:输出格式

-m:禁用mount模块

-n:禁用网络模块

-t #:延迟时间间隔

glances界面:

wKioL1YAIlaDo1I6AAGBH4qWhF8456.jpg
wKioL1YAIlaDo1I6AAGBH4qWhF8456.jpg

glances界面分别显示了CPU,Load,Mem,Swap,Network,Tasks,DiskI/O信息。

进入glances界面之后有一些内建命令:

h:显示帮助信息

q:离开glances

c:按照CPU实时负载对系统进程进行排序

m:按内存使用状况对系统进程进行排序

i:按照I/O使用状况对系统进程进行排序

p:按照进程名称进行排序

d:显示磁盘读写状况

w:删除日志文件

l:显示日志

s:显示传感器信息

f:显示系统信息

4.dstat命令:

dstat:多功能系统资源统计生成工具。

 dstat [-afv] [options..] [delay [count]]

常用选项:

-c:显示CPU的相关信息

-C 0,1,total

-d:显示disk相关信息

-D total,sda,sdb,sdc...

wKiom1YAIY_TUP7RAABm-F7IRw4647.jpg
wKiom1YAIY_TUP7RAABm-F7IRw4647.jpg

-g:显示page相关统计数据

-m:显示memory相关统计数据

-n:显示network相关统计数据;

-N eth1,total  统计eth1接口汇总流量

-p:显示process相关统计数据;

-r:显示io请求相关的统计数据;

-s:显示swapped相关的统计数据;

--tcp:和tcp相关的统计数据

--udp:和udp相关的统计数据

--unix:和unix相关的统计数据

--raw:和raw相关的统计数据

--socket:和socket相关的统计数据

--ipc:和ipc(进程间通信)相关的统计数据

wKiom1YAId-yFgsCAAEln6XQTN4941.jpg
wKiom1YAId-yFgsCAAEln6XQTN4941.jpg

--top-cpu:显示最占用CPU的进程

--top-io:显示最占用io的进程

--top-mem:显示最占用内存的进程

--top-latency:显示延迟最大的进程

wKioL1YAJFiBj6J-AAH9QAhPCqs422.jpg
wKioL1YAJFiBj6J-AAH9QAhPCqs422.jpg

由此可以看出dstat的功能强大之处,dstat还支持获取MySQL5的相关信息:

--mysql5-(cmds|conn|io|keys ) 获取mysql5相关信息

5.kill命令:

kill命令向进程发送控制信号,以实现对进程管理:

显示当前系统可用信号:

kill -l

man 7 signal

常用的信号:

1) SIGHUP: 无须关闭进程而让其重读配置文件;

2) SIGINT: 中止正在运行的进程;相当于Ctrl+c;

9) SIGKILL: 杀死正在运行的进程;该信号不能被阻塞,处理和忽略

15) SIGTERM:终止正在运行的进程;该信号可以被阻塞处理,要求正常杀死进程时,允许进程释放资源之后kill掉

18) SIGCONT:让停止的进程继续执行

19) SIGSTOP:停止进程的执行

制定信号的方法:

1.信号的数字标识:1,2,9,15,18,19

2.信号完整的名称:SIGHP,SIGINT,SIGKILL

3.信号的简写名称:HUP,INT,KILL

向进程发送信号:

kill [-signal] PID ...

终止“名称“之下的所有进程

killall [signal] program

6.Linux的作业控制:

前台作业:通过终端启动,且启动后一直占据终端;

后台作业:可以通过终端启动,但启动后即转入后台运行(释放终端);

如何让作业运行于后台?

(1) 运行中的作业

Ctrl+z

(2) 尚未启动的作业

# COMMAND &

此类作业虽然被送往后台运行,但其依然与终端相关;如果希望送往后台后,剥离与终端的关系:

# nohup COMMAND &

查看所有作业:

# jobs

作业控制:

# fg [[%]JOB_NUM]:把指定的后台作业调回前台;

# bg [[%]JOB_NUM]:让送往后台的作业在后台继续运行;

# kill [%JOB_NUM]:终止指定的作业;

7.进程优先级的调整:

进程优先级的调整,是调整静态优先级:100-139

进程默认启动时的nice值为0,优先级为120

如:我们运行top命令,来查看其的优先级:

wKioL1YAJRHixtRDAACae-_NRGk940.jpg
wKioL1YAJRHixtRDAACae-_NRGk940.jpg

nice命令:

nice [OPTION] [COMMAND [ARG]...]

renice命令:

renice [-n] priority pid...

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-07-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档