linux——CPU使用率、内存使用率、磁盘使用率等详解
1:CPU使用率
可参考linux系统查看CPU使用率的命令
常用命令:top
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
[root@izwz94b8tt3jlf3ne0ymp3z ~]# top
top - 09:27:04 up 49 days, 23:46, 8 users, load average: 0.68, 0.72, 0.71
Tasks: 642 total, 1 running, 641 sleeping, 0 stopped, 0 zombie
%Cpu0 : 2.3 us, 0.7 sy, 0.0 ni, 97.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 2.0 us, 1.0 sy, 0.0 ni, 97.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 2.0 us, 1.7 sy, 0.0 ni, 96.0 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
%Cpu3 : 28.9 us, 15.3 sy, 0.0 ni, 55.5 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
KiB Mem : 32780244 total, 5818224 free, 18511132 used, 8450888 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 13854780 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 8987 root 20 0 5509748 2.4g 7592 S 46.7 7.7 25382:24 java 9730 root 20 0 4261252 824940 7772 S 4.0 2.5 2816:16 java
17683 root 10 -10 170532 49188 6460 S 2.3 0.2 468:07.53 AliYunDun
10476 root 20 0 9995260 9.4g 1348 S 1.0 30.0 254:27.10 redis-server
28829 root 20 0 162656 2832 1588 R 1.0 0.0 0:01.14 top 545 root 20 0 1269008 31392 5916 S 0.3 0.1 338:24.55 CmsGoAgent.linu 546 root 20 0 21672 1088 828 S 0.3 0.0 4:10.99 irqbalance 9333 root 10 -10 436916 2032 1232 S 0.3 0.0 32:12.31 AliSecGuard
27347 root 10 -10 579632 9200 1352 S 0.3 0.0 44:12.52 AliDetect 1 root 20 0 52768 4228 1956 S 0.0 0.0 10:34.76 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.83 kthreadd 4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H ……………………………………………………………………………………………………………………………………………
top各参数解释:
统计信息区前几行是系统整体的统计信息。
第一行是任务队列信息:
参数 | 释义 |
---|---|
09:27:04 | 当前时间 |
up up 49 days, 23:46 | 系统运行时间,格式为天,时:分 |
8 users | 当前登录用户数 |
load average: 0.68, 0.72, 0.71 | 系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。 |
同 uptime 命令的执行结果:
[root@izwz94b8tt3jlf3ne0ymp3z ~]# uptime09:30:43 up 49 days, 23:50, 8 users, load average: 2.11, 0.87, 0.74
第二行为进程的信息
参数 | 释义 |
---|---|
total | 进程总数 |
running | 正在运行的进程数 |
sleeping | 睡眠的进程数 |
stopped | 停止的进程数 |
zombie | 僵尸进程数 |
第三行为CPU的信息 | |
Cpu(s): | |
有几个CPU,就会显示几行。 | |
例中有4个,故四行。 | |
参数 | 释义 |
:--------: | :------------- |
us | 表示用户空间程序的cpu使用率(没有通过nice调度) |
sy | 表示系统空间的cpu使用率,主要是内核程序 |
ni | 表示用户空间且通过nice调度过的程序的cpu使用率 |
id | 空闲cpu |
wa | cpu运行时在等待io的时间 |
hi | 硬件CPU中断占用百分比 |
si | 软中断占用百分比 |
st | 虚拟机占用百分比 |
四五六行同第三行释义(多CPU) |
【注意:】97.0id,表示空闲CPU,即CPU未使用率,100%-97.0%=3%,即系统的cpu使用率为3%
最后两行为内存信息
Mem:
参数 | 释义 |
---|---|
total | 物理内存总量 |
free | 空闲内存总量 |
used | 使用的物理内存总量 |
buff/cache | 用作内核缓存的内存量 |
Swap: | |
参数 | 释义 |
:--------: | :------------- |
total | 交换区总量 |
free | 空 |
used | 使用的交换区总量 |
avail Mem | 代表可用于进程下一次分配的物理内存数量 |
第七行参数的释义 | |
参数 | 释义 |
:--------: | :------------- |
PID | 进程id |
USER | 进程所有者的用户名 |
PR | 优先级 |
NI | nice值。负值表示高优先级,正值表示低优先级 |
VIRT | 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES |
RES | 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA |
SHR | 共享内存大小,单位kb |
S | 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程 |
%CPU | 上次更新到现在的CPU时间占用百分比 |
%MEM | 进程使用的物理内存百分比 |
TIME+ | 进程使用的CPU时间总计,单位1/100秒 |
COMMAND | 命令名/命令行 |
2:内存使用率
free命令
[root@izwz94b8tt3jlf3ne0ymp3z ~]# free ##以KB为单位显示内存使用情况total used free shared buff/cache available
Mem: 32780244 18509816 5784948 11504 8485480 13856092
Swap: 0 0 0
[root@izwz94b8tt3jlf3ne0ymp3z ~]# free -m ##以MB为单位显示内存使用情况total used free shared buff/cache available
Mem: 32011 18075 5649 11 8286 13531
Swap: 0 0 0
[root@izwz94b8tt3jlf3ne0ymp3z ~]# free -g ##以GB为单位显示内存使用情况total used free shared buff/cache available
Mem: 31 17 5 0 8 13
Swap: 0 0 0
[root@izwz94b8tt3jlf3ne0ymp3z ~]#
参数 | 释义 |
---|---|
Mem | 物理内存使用情况 |
swap | 交换分区情况 |
+buffers/cache | (可用)的内存数,即free+buffers+cached |
-buffers/cache | (已用)的内存数,即used-buffers-cached |
total | 物理内存总大小 |
used | 已经使用的物理内存大小 |
free | 空闲的物理内存大小 |
shared | 多个进程共享的物理内存大小 |
buffers Buffer | 缓存内存数 |
cached Page | 缓存内存数 |
自动转换单位显示内存使用情况(centos7才有) |
[root@izwz94b8tt3jlf3ne0ymp3z ~]# free -htotal used free shared buff/cache available
Mem: 31G 17G 5.5G 11M 8.1G 13G
Swap: 0B 0B 0B
total 总内存 = used + free + buff/cache
available 还能用的内存 = free + buff/cache
如果使用到交换分区,则表明物理内存不够或内存泄漏了
关于 buffer 和 cache:
我们的数据是存放在磁盘上的,数据是交给CPU进行处理的,但磁盘的运转速度很慢,CPU的运转速度很快,不可能直接把磁盘的数据直接丢给CPU进行处理,因此要经过一个中间层,即内存,我们把这部分内存称为缓存(cache);相反地CPU把数据处理完了,要存放到磁盘中,也要经过内存这个中间层,这部分内存则称为缓冲(buffer)因此,数据的流向不一样,内存的角色也不一样。系统会优先预留一部分内存给 buff/cache 使用,剩下的内存再留给系统或程序使用。
3:磁盘使用率
df命令
[root@izwz94b8tt3jlf3ne0ymp3z ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 16379668 0 16379668 0% /dev
tmpfs 16390120 0 16390120 0% /dev/shm
tmpfs 16390120 11496 16378624 1% /run
tmpfs 16390120 0 16390120 0% /sys/fs/cgroup
/dev/vda1 309505004 181307880 113500932 62% /
/dev/vdb1 515927276 21636792 471730172 5% /data
25b5d49774-fjs35.cn-shenzhen.nas.aliyuncs.com:/ 1099511627776 34277376 1099477350400 1% /content
tmpfs 3278028 4 3278024 1% /run/user/0
输出结果列说明
参数 | 释义 |
---|---|
Filesystem | 代表该文件系统是哪个分区,所以列出的是设备名称 |
1K-blocks | 磁盘大小。说明下面的数字单位是1KB,可利用-h或-m来改变单位大小,也可以用-B来设置 |
Used | 已经使用的空间大小。 |
Available | 剩余的空间大小。 |
Use% | 磁盘使用率 |
Mounted on | 磁盘挂载的目录 |
linux——CPU使用率、内存使用率、磁盘使用率等详解相关推荐
- Windows获取CPU、内存和磁盘使用率脚本
获取CPU使用率脚本(vbs),另存为cpu.vbs: On Error Resume Next Set objProc = GetObject("winmgmts:\\.\root\cim ...
- Linux小知识---利用Snmp远程获取CPU,内存和磁盘使用率
知识点回顾 <网络协议学习-SNMP> 前面写了一篇Snmp协议的知识点文章,今天要利用这些知识点,再加一些shell编程知识点,实现一个利用shell脚本,远程获取某个Agent的CPU ...
- shell脚本获取cpu、内存、磁盘使用率
1.获取cpu使用率脚本 #!/bin/sh # #脚本功能描述:依据/proc/stat文件获取并计算CPU使用率 # #CPU时间计算公式:CPU_TIME=user+system+nice+id ...
- linux命令清理磁盘空间,linux环境下清理系统磁盘空间命令详解
提示 1:清理残余的配置文件 一般而言,当我们从 Ubuntu 系统中删除了一个软件之后,该软件的残余配置文件并没有被删除.如果你确信以后不再使用该软件,那么保留其配置文件实在没有必要,所以我们大可一 ...
- Linux下查看CPU、内存、磁盘使用情况,并计算其使用率
一.查看CPU使用率 top命令 top:time of process,查看系统当前的运行情况,查看CPU.内存.运行时间.交换分区.执行的线程等信息. top命令是linux下常用的性能分析工具, ...
- java 通过snmp协议获取物理机CPU、内存容量及使用率,存储的容量及使用率
java 用snmp协议获取物理机CPU.内存容量及使用率,存储的容量及使用率,java获取trap告警 一.SNMP简介 1.什么是snmp 二.SNMP获取信息步骤 1.开启SNMP 2.MIB文 ...
- Linux监控操作系统CPU、内存、磁盘、网络和dstat
Linux操作系统监控 top命令 free命令- 内存监控 df命令 - 磁盘空间监控 iostat命令- 磁盘IO监控 vmstat命令-综合监控工具 netstat命令-网络监控 dstat- ...
- Linux操作系统监控服务器CPU、内存、磁盘、网络和dstat
操作系统监控 top命令 内存监控 - free 磁盘IO监控 - iostat 磁盘空间监控 - df 综合监控工具 - vmstat 网络监控- netstat 超级监控工具 - dstat to ...
- Linux按照CPU、内存、磁盘IO、网络性能监测
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
- linux cpu 内存爆满 mysql停止_如何用脚本统计linux系统CPU、内存、磁盘IO等信息?...
概述 今天主要分享一个shell脚本,用来获取linux系统CPU.内存.磁盘IO等信息. 脚本 #!/bin/bash# 获取要监控的本地服务器IP地址IP=`ifconfig | grep ine ...
最新文章
- 西班牙放大招,利用区块链技术防腐
- Google的系统工程师(SA)如何工作
- centos6.8安装zabbix
- Java实现K-means
- 【QGIS入门实战精品教程】4.3:QGIS属性表按字段链接外部属性数据
- Java 8功能教程– ULTIMATE指南(PDF下载)
- python列表的特点_python基础(一)列表、集合和元组的基本特性
- 字符串hash(类似于进制的hash)
- 种子填充算法c语言代码实现,OpenGL绘图实例三之种子填充算法
- 关于C语言的字符常量和符号常量
- 猎人华为单机离线版(一键启动增强版+扩展工具箱2022) | 猎人维修大师免加密狗单机永久版 | 华为线刷工具(MRT HW Flash Tool) | 华为工具(MRT HW Tool_V3.3)
- pm入门-需求调研/竞品分析/应用工具简介
- 计算机ABC分类法的步骤,ABC分类法的具体步骤
- 创建一个网站需要多少预算?
- lzma java sdk,Java LZMA 磁盘与内存压缩实现
- 个人项目---音乐视频播放器
- Excel的常用查询函数一(Index与match联合查询)
- 文件服务器+缓存,文件服务器缓存
- joomla后台拿shell
- 全国大中学生体测取消选测 长跑成为必测项目
热门文章
- 软件开发的质量及效率
- 山东计算机专业的在职硕士,2019年山东科技大学在职研究生计算机技术专业关于招生方面的信息是什么...
- FPGA(3)--VHDL及原理图--4位全加器
- MAC word2015 插入罗马字母
- 阿里巴巴淘宝网电子商务模式调查分析
- dreamweaver网页制作模板
- 8051蜂鸣器程序c语言,求51单片机蜂鸣器程序
- m.2linux系统安装,LINUX 下安装MPLAY
- 编译go版本的supervisord
- 如何在echarts地图默认的行政区(县)新增一个没有编号的区(如甘肃省天水市的区县新增一个新安区)