当前位置: 首页 > news >正文

io、free、ps 命令

io、free、ps 命令

1、监控 io 性能

这个 iostat 命令,在安装 sar 命令的时候,就一起安装了,所以不用重新安装。具体用法见下图,
io、free、ps 命令
iostat 命令和 vmstat 挺像的,输入 iostat 可以直接查看磁盘显示情况,输入 iostat 1 就是每隔1秒显示一次,是动态命令,使用 ctrl + c 结束命令。sda 和 sdb 表示磁盘,第3 列和第4 列表示读和写的速度。这个命令没什么用处,因为命令 sar -b 也可以看出这些信息。
io、free、ps 命令
接着往下介绍命令 iostat -x 1,见下图,
io、free、ps 命令
这个命令有一个非常重要的指标 %util ,表示 io 等待,在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。
还有一个命令 iotop ,需要安装,见下图,
io、free、ps 命令
io、free、ps 命令
iotop 命令和 top 命令很像,也是动态显示,输入命令 iotop ,回车,见下图,
io、free、ps 命令
可以看到排序,但是 io 没有什么读写信息,也就没有什么排序。按字母 q 退出。

2、free 命令

直接查看内存使用状况。输入 free ,回车,见下图,
io、free、ps 命令
可以看到当前系统的总内存大小以及使用内存的情况,单纯的 free 命令单位是 KB ,-m 选项的单位是 M ,-g 选项的单位是 G,-h 选项是智能的显示单位。其中,第2行是内存使用情况,第3行是 swap的使用情况。我们关注的是第2行的数据,从上例中可看到当前系统内存总大小为999936 KB,已经使用118532 KB,剩余578680 KB,共享6832 KB。 系统初始化时,就已经分配出很大一部分内存给缓存(buff/cache),这部分缓存用来随时提供给程序使用,如果程序不用,那这部分内存就空闲。CPU 和磁盘之间,需要通过内存来缓存。从磁盘到CPU之间的内存叫 cache ,从CPU到磁盘之间的内存叫 buffer。
公式:total=used+free+buff/cache。
avaliable包含free和buffer/cache剩余部分。

3、ps 命令

io、free、ps 命令

作为系统管理员,一定要知道你所管理的系统都有那些进程在运行,在windows下只要打开任务管理器即可查看。在linux下呢?其实在上面介绍的top命令就可以,但是不容易看,还有专门显示系统进程的命令 ps ,静态显示出来进程情况。
先输入命令 man ps ,回车,来查看一下 ps 的功能,见下图,
io、free、ps 命令
可以看到 ps 的作用是报告当前流程的快照。
接着来看一下 ps 的用法,见下图,
io、free、ps 命令
io、free、ps 命令
io、free、ps 命令
ps aux 命令显示当前系统的所有进程,它经常会连同管道符一起使用,用来查看某个进程或者它的数量,见下图,
io、free、ps 命令
ps 还有一种用法,见下图,
io、free、ps 命令
-elf 的用法和 aux 大同小异,显示的信息基本上是一样的,不一一截图了。这两种方法就是看个人喜好。
接着介绍 ps aux 命令结果里面几个参数的意义:
USER:进程的运行用户
PID :进程的id,这个id很有用,在linux中内核管理进程就得靠pid来识别和管理某一个程序,比如我想终止某一个进程,则用 kill 进程的pid 有时并不能杀掉,则需要加一个-9选项了 kill -9 进程pid
现在假设 PID 为509的进程是非法进程,先查看一下进程的目录,看看进程是从哪边启动起来的,就是下图红色框框绿色字体的内容。
io、free、ps 命令
%CPU CPU百分比
%MEM 内存百分比
VSZ 虚拟内存
RSS 物理内存
START 什么时候启动
TIME 运行多久
COMMAND 命令
STAT :表示进程的状态,进程状态分为以下几种(不要求记住,但要了解)
D 不能中断的进程(通常为IO)
R 正在运行中的进程
S (大写的S)已经中断的进程,通常情况下,系统中大部分进程都是这个状态
T 已经停止或者暂停的进程,如果我们正在运行一个命令,比如说 vmstat 1 ,如果我们按一下 ctrl + z 让他暂停,那么我们用ps查看就会显示T这个状态,见下图,
io、free、ps 命令
W 这个好像是说,从内核2.6xx 以后,表示为没有足够的内存页分配
X 已经死掉的进程(这个好像从来不会出现)
Z 僵尸进程,杀不掉,打不死的垃圾进程,占系统一小点资源,不过没有关系。如果太多,就有问题了。一般不会出现。
< 高优先级进程,CPU先给这些进程用
N 低优先级进程
L 在内存中被锁了内存分页(还没见过,了解即可)
s (小写的s)主进程,一般显示为 Ss 为主进程,S 为子进程。
l 多线程进程,意思就是这个进程有多个线程。这边线程和进程,可以查查资料
io、free、ps 命令
io、free、ps 命令
io、free、ps 命令
io、free、ps 命令
io、free、ps 命令

  • 代表在前台运行的进程
    这个ps命令是在工作中用的非常多的命令之一。

总结:
iostat -x %util表示在统计时间内所有处理IO时间,除以总共统计时间
iostat 显示当前磁盘使用情况
iostat 1 每隔1秒显示一次磁盘使用情况,是动态命令,使用 ctrl + c 结束命令
iotop 磁盘使用情况,按 io 排序
free 可以看到当前系统的总内存大小以及使用内存的情况,-m 单位M,-g单位G,-h智能显示单位
ps aux 静态的显示当前系统的所有进程,经常与 | 一起使用

转载于:https://blog.51cto.com/13503302/2090298

相关文章:

  • 微服务:Java EE的拯救者还是掘墓人?
  • java在开新的线程
  • 手游为什么要热更新,C#为什么不能热更新,LUA为什么可以
  • HDU 1232:畅通工程(并查集模板)
  • input按回车键,响应相关事件
  • 前端面试题:JS中的let和var的区别
  • CentOS 安装ActiveMQ
  • hdu1009 FatMouse' Trade---贪心
  • android-------Java 常问的基础面试题
  • 网络爬虫练习
  • [离散时间信号处理学习笔记] 15. 模拟信号的数字处理
  • Python进阶细节
  • php rsa加密解密实例
  • BZOJ2599:[IOI2011]Race(点分治)
  • 泛型就这么简单
  • 〔开发系列〕一次关于小程序开发的深度总结
  • Angular2开发踩坑系列-生产环境编译
  • EventListener原理
  • Fastjson的基本使用方法大全
  • go append函数以及写入
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • JDK9: 集成 Jshell 和 Maven 项目.
  • Redux系列x:源码分析
  • REST架构的思考
  • 安装python包到指定虚拟环境
  • 从setTimeout-setInterval看JS线程
  • 当SetTimeout遇到了字符串
  • 反思总结然后整装待发
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 精彩代码 vue.js
  • 探索 JS 中的模块化
  • 听说你叫Java(二)–Servlet请求
  • 一个项目push到多个远程Git仓库
  • AI算硅基生命吗,为什么?
  • kubernetes资源对象--ingress
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • ​比特币大跌的 2 个原因
  • (14)Hive调优——合并小文件
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (Python) SOAP Web Service (HTTP POST)
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (十八)用JAVA编写MP3解码器——迷你播放器
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (源码版)2024美国大学生数学建模E题财产保险的可持续模型详解思路+具体代码季节性时序预测SARIMA天气预测建模
  • ./configure、make、make install 命令
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .Net 6.0 处理跨域的方式
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .net Signalr 使用笔记
  • .NET/C# 使用反射调用含 ref 或 out 参数的方法
  • [2024] 十大免费电脑数据恢复软件——轻松恢复电脑上已删除文件
  • [Android Studio 权威教程]断点调试和高级调试
  • [BZOJ5250][九省联考2018]秘密袭击(DP)