一、Linux如何查看内存使用情况1. free命令free命令可以显示系统的内存使用情况,free表示未被占用的物理内存大小;shared表示多个进程共享的部分物理内存大小;
1. free命令
free命令可以显示系统的内存使用情况,包括物理内存和交换空间。
语法:free [选项]
常用选项:
- -b:以字节为单位显示
- -k:以KB为单位显示
- -m:以MB为单位显示
- -g:以GB为单位显示
示例:
```
$ free -h
total used free shared buff/cache available
Mem: 7.8G 2.3G 4.5G 16M 1.0G 5.2G
Swap: 2.0G 0B 2.0G
```
解释:
total表示总共的物理内存大小;used表示已经被占用的物理内存大小;free表示未被占用的物理内存大小;shared表示多个进程共享的部分物理内存大小;buff/cache表示缓冲区和高速缓存所占用的部分物理内存大小;available表示还可以被应用程序使用的可用物理内存大小。Swap是交换空间,如果没有开启交换分区,则只会输出total和used两列。
2.top命令
top命令可以实时监控系统资源使用情况,包括CPU、内存等。
语法:top [选项]
常见选项:
- M或者Shift+m按照进程占据虚拟地址排序;
- P或者Shift+p按照进程占据CPU使用率排序;
- T或者Shift+t按照进程占据的时间累计值排序。
示例:
```
$ top
top - 10:50:01 up 1 day, 22:23, 2 users, load average: 0.00, 0.00, 0.00
Tasks: ... total, ... running, ... sleeping, ... stopped,
Cpu(s): ... us, ... sy,... ni,... id,... wa,... hi,... si,...
Mem: .... total,… used,… free,… buff/cache,...
Swap: ....total,… used,… free,…
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
...
```
解释:
VIRT表示虚拟内存大小,RES表示实际物理内存大小,SHR表示共享内存大小。%MEM是该进程所占用的物理内存百分比。
3.ps命令
ps命令可以查看系统中正在运行的进程信息,包括每个进程所占用的资源情况。
语法:ps [选项]
常见选项:
- aux:显示所有用户的所有进程。
- u:以用户为主要关键字来显示各个进程状态。
- x:显示没有控制终端的进程。
示例:
```
$ ps aux | grep java
root xxxx xx.x xxxxx xxxxxxxx /usr/bin/java -jar /opt/xxx.jar --spring.profiles.active=prod --server.port=8088
user xxxx xx.x xxxxx xxxxxxxx /usr/bin/java -jar /opt/xxx.jar --spring.profiles.active=prod --server.port=8088
```
解释:
第一列是进程的所有者,第二列是进程ID,第三列是CPU占用率,第四列是内存占用率。
4. vmstat命令
vmstat命令可以显示系统的虚拟内存使用情况和CPU使用情况。
语法:vmstat [选项] [时间间隔] [次数]
常见选项:
- -a:显示活动和非活动内存区域。
- -f:显示fork操作数量。
- -s:按照大小排序并且以KB为单位输出结果。
示例:
```
$ vmstat 1 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 ... ... ... 0 0 x y z w v u t s
...
```
解释:
swpd表示交换空间已经被使用的大小;free、buff、cache分别表示未被占用的物理内存、缓冲区和高速缓存所占用的部分物理内存大小;si和so表示每秒钟从磁盘读取到交换空间或者写入到磁盘中去了多少数据。us、sy、id等字段与top命令类似。
1. sar命令
sar命令可以记录系统的CPU、内存等资源使用情况,并且可以生成报告。
语法:sar [选项] [时间间隔] [次数]
常见选项:
- -r:显示内存使用情况。
- -u:显示CPU使用情况。
示例:
```
$ sar -r 1 5
Linux ... 4.15.0-101-generic (xxxx) xx/xx/xx _x86_64_ (8 CPU)
12:00:01 AM kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit
12:00:02 AM xxxxxx xxxxxx xxxx x.xx xxxxxx xxxxxx xxxx x.xx
...
Average: ... ... ... ...
```
解释:
kbmemfree表示未被占用的物理内存大小;kbavail表示还可以被应用程序使用的可用物理内存大小;kbbuffers和kbcached分别表示缓冲区和高速缓存所占用的部分物理内存大小。%commit是已经提交到磁盘中但是尚未写入交换空间中去的数据量百分比。
2. top命令
top命令也可以记录系统资源使用情况,包括CPU、内存等,并且支持将结果输出到文件中。
语法:top [选项] > 文件名
示例:
```
$ top -b -n 1 > top.log
```
解释:
-b参数表示以批处理模式运行,不需要交互;-n参数表示运行的次数。
3. pidstat命令
pidstat命令可以记录每个进程的资源使用情况,包括CPU、内存等,并且支持将结果输出到文件中。
语法:pidstat [选项] [时间间隔] [次数]
常见选项:
- -r:显示内存使用情况。
- -u:显示CPU使用情况。
示例:
```
$ pidstat -r 1 5 > pid.log
```
解释:
-r参数表示只记录内存使用情况。
以上就是关于linux如何查看内存使用情况的相关知识,如果对你产生了帮助就关注网址吧。
网页题目:linux如何查看内存使用情况
文章URL:http://www.mswzjz.cn/qtweb/news21/383121.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能