Linux优化命令之free命令

文章介绍了Linux中的free命令用于查看内存使用情况,包括命令语法、选项和输出格式,并详细解释了内存状态的各项指标。此外,文章还提到了压力测试工具stress,用于模拟CPU和内存负载,以及如何通过stress进行压力测试并监控系统资源。最后,文中通过实验展示了内存压力测试的效果,强调了buff/cache在内存管理中的作用。
摘要由CSDN通过智能技术生成

free

一、free命令描述:

free命令是一个在Linux系统中常用的命令工具,它用来查看系统内存的使用情况。在执行该命令的时候,它会输出系统当前的内存状态信息。

1.free命令的语法:

free命令的语法如下:

free [OPTIONS]

2.free命令的选项:

free命令支持多种选项,其中一些主要的选项如下:

(1)常用选项:

  • -b, --bytes:以字节为单位显示内存使用情况,默认为KB。
  • -k, --kilobytes:以KB为单位显示内存使用情况。
  • -m, --megabytes:以MB为单位显示内存使用情况。
  • -g, --gigabytes:以GB为单位显示内存使用情况。

(2)实际运用:

1.[root@wang1 ~]# free -b #以字节为单位显示内存使用情况,默认为KB。

在这里插入图片描述

2. [root@wang1 ~]# free -k #以KB为单位显示内存使用情况。

在这里插入图片描述

3. [root@wang1 ~]# free -m #以KB为单位显示内存使用情况。

在这里插入图片描述

4. [root@wang1 ~]# free -g #以GB为单位显示内存使用情况。

在这里插入图片描述

3.free命令的输出格式:

free命令的输出结果包括两部分:物理内存和交换分区。以下是输出结果中主要的列所解释的含义:

选项含义
total总内存大小
used已使用的内存大小
free空闲内存大小
shared被分享的页面区域大小
buffers缓存的页面大小
cached高速缓存的页面大小
swap交换分区的信息,包括总大小、已使用大小,剩余大小等

其中,buffers和cached表示的是可用内存中被占用的部分(缓存和页面),所以在查看总内存和可用内存时,需要将这两个值加进去。

4.free命令使用示例

  • free -h: 以易读的方式显示内存使用情况。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OmCvFRap-1686752493979)(C:\Users\yuyong\Desktop\笔记\图\49.png)]

  • free -s 10: 每隔10秒刷新一次内存使用情况。

在这里插入图片描述

  • watch -n 5 free -m: 每隔5秒显示内存使用情况。

在这里插入图片描述

二、压力测试工具stress:

1.工具简介:

stress是下的一个是Linux下的一个压力测试工具,可以对cpu、memory、IO以及磁盘进行压力测试,可以指定负载的cpu个数。

2.参数详解:

参数含义
-c–cpu 产生n个进程,每个进程都反复不停的计算随机数的平方根
-i–io 产生n个进程,每个进程反复调用 将内存上的内容写到硬盘上
-m-vm 产生n个进程,每个进程不断分配和释放内存
-t–timout 在n秒后结束进程
-d–hdd 产生n个不断执行 write 和unlink函数的进程(创建文件、写入内容、删除文件)

3.下载压力测试工具:

(1)安装所需依赖包:

[root@wang1 ~]# yum install -y epel-release #安装所需的依赖包,否则软件安装不成功

在这里插入图片描述

(2)安装软件:

[root@wang1 ~]# yum install -y stress #安装压力测试软件

在这里插入图片描述

三、模拟实验:

1.压力测试,查看CPU使用率:

(1)采用stress压力测试i工具,模拟CPU负载的情况,**高IO的情况,使用uptime查看平均负载,使用mpstat和pidstat工具,找出负载高的根源。

  • 查看系统负载情况 watch -d uptime
[root@wang1 ~]# uptime #初始信息负载情况

在这里插入图片描述

(2)对系统内存做压力测试:

  • 压力测试前初始信息:

在这里插入图片描述

  • 用dd命令进行压力测试:
[root@wang1 ~]# dd if=/dev/zero of=/opt/1.txt bs=1G count=10 #加内存

在这里插入图片描述

  • free -s 2进行内存实时检测
[root@wang1 ~]# free -s 2 #进行内存实时检测

在这里插入图片描述

  • 解决方案:用rm -rf强制删除源文件。
[root@wang1 opt]# rm -rf 1.txt #删除源文件

在这里插入图片描述

在这里插入图片描述

  • 总结:通过实验,可以看到used有时也会降低,但此时buff/cache会增高,所以buff/cache在输入大量数据时会分担一点缓存压力。

四、总结:

free命令是Linux系统中常用的命令工具之一,使用它可以快速地了解系统的内存使用情况。在使用free命令时,需要注意选择合适的选项和参数,以达到最佳的查看效果。同时,在进行系统内存压力测试时, free命令并不适合做压力测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值