Linux服务器内存压力测试脚本(本人亲测)

一:内存的测试脚本

方式1: 备份大数据

     简化版脚本

    1:脚本范列

           #!/bin/bash

 

          mkdir -p /tmp/skyfans/memory

         mount -t tmpfs -o size=10240M tmpfs /tmp/skyfans/memory

         dd if=/dev/zero of=/tmp/skyfans/memory/block

          sleep 60

         rm /tmp/skyfans/memory/block

         umount /tmp/skyfans/memory

         rmdir -p /tmp/skyfans/memory

1: mkdir -p

创建多级目录

2: mount -t tmpfs -o size

t 表示类型,也就是挂载文件系统的类型,表面你是挂载tmpfs文件系统;

O 表示选项: 选项里的size=10240M表示10G.挂载10G到/tmp/skyfans/memory

3: dd if=/dev/zero of=/tmp/skyfans/memory/block

表示将/dev/zero 全盘数据备份到指定路径的block文件

dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。

注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2

if=文件名,输入文件名,缺省为标准输入。即指定源文件。< if=input file >

of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >

4:umount /tmp/skyfans/memory

卸载挂载点

5:rmdir -p /tmp/skyfans/memory

删除多级目录

方式2:优化后的脚本


#!/bin/bash
################################################################
#       mem used script
#       eg. ./mem.sh 60G & to start testing
#       eg. ./mem.sh stop  to stop testing and clear env
#       update: 2019-1-22  pansaky
################################################################
num=$1
user=`root`
 
start()
{
if [ -d /tmp/memory ];then
        echo "the dir "/tmp/memory" is already exist!, use it." >> mem.log
else
        sudo mkdir /tmp/memory
        mount -t tmpfs -o size=$num tmpfs /tmp/memory
fi
dd if=/dev/zero of=/tmp/memory/block >> mem.log 2>&1
}
 
stop()
{
 
rm -rf /tmp/memory/block
umount /tmp/memory
rmdir /tmp/memory
if [ -d /tmp/memory ];then
        echo "Do not remove the dir \"/tmp/memory\", please check "
else
        echo "clear env is done!"
fi
}
main()
{
if [ $num == 'stop' ];then
        stop
elif [ $user != "root" ];then
        echo "please use the \"root\" excute script!"
        exit 1
else
        start
fi
}
 
if [ $# = 2 -o $# = 1 ];then
        main
else
        echo 'Usage: <./mem.sh 60G &> to start  or <./mem.sh stop>  to clear env'
fi

 

-----------------------------

脚本执行:  ./mem_test.sh 3G &

3:测试

    内存测试,每间隔10秒采集一次,共计采集10次

sar -r 60 10

Linux服务器内存压力测试脚本(本人亲测)_第1张图片

 

你可能感兴趣的:(堡垒机与服务器,Linux系统)