原理

顾名思义, 内存盘就是把一部分内存拿出来当作硬盘使用,因此有着普通硬盘无法比拟的IO性能,你可以把你需要经常缓存的目录设置在内存盘,以获得高效率,但是缺点也显然易见,即不能永久保存数据,一旦机器重启或关机,数据就会消失,所以需要根据需求来进行合理的规划和使用。

使用

装了宝塔的同学可以直接使用Linux工具箱这个软件来完成一键挂载.通过宝塔实现的内存盘是已经挂载好并且有已有文件系统tmpfs,和下面的命令不同,本文不会重点讲这种内存盘.

没有装宝塔的话,较新的CentOS7系统可用下面的命令创建一个RAMDISK硬盘,大小为16Gib

# modprobe brd rd_nr=1 rd_size=16777216 max_part=0

参数rd_size表示要创建内存磁盘的大小(单位是Kib),根据自己机器的实际内存来做调整,比如 本文用16Gib的内存创建了一块内存盘。

这条命令会在dev目录中产生一个叫ram*的设备,这个设备即创建好的内存盘.

执行下面的命令可以检查是否创建成功:

# ls /dev/ram*

例如本文就是下图所示:
U@6CI_HO2Y@7DP5___U2NIT.png

创建成功后,我们需要对其进行格式化:

# mkfs.ext4 /dev/ram0

建立挂载目录:

# mkdir -p /ramdisk

之后就可以直接进行挂载:

# mount /dev/ram0 /ramdisk

然后你就可以使用df -h命令查看挂载是否正常。至此,一个内存盘就创建完成了。

测试速度:
6M@W12_H6~_YWJXK_PCFZ02.png

卸载

首先取消挂载:

# umount /dev/ram0

然后再卸载,执行如下命令即可:

# modprobe -r brd

开机自动挂载

# echo "options brd rd_nr=1 rd_size=20971520 max_part=0" >> /etc/modprobe.d/memdisk.conf
# echo "mkfs.ext4 /dev/ram0" >> /etc/rc.d/rc.local
# echo "mount /dev/ram0 /ramdisk" >> /etc/rc.d/rc.local
# chmod +x /etc/rc.d/rc.local