linux如何查看内存使用情况

一、Linux如何查看内存使用情况1. free命令free命令可以显示系统的内存使用情况,free表示未被占用的物理内存大小;shared表示多个进程共享的部分物理内存大小;

一、Linux如何查看内存使用情况

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命令类似。

二、Linux如何查看内存使用情况记录

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。内容未经允许不得转载,或转载时需注明来源: 贝锐智能