前言
假如你的电脑内存比较多,根本用不完,又或者你想要更快的硬盘做高速读写,但是担心损耗固态硬盘的寿命,那么你可以试试本文的方法
本文会介绍两种方法,教你如何将内存当存储用
注:仅限
Linux
系统,本文以Debian
系发行版作为示例
方案一:直接挂载
这个方法比较简单,一行命令即可
sudo mount -t tmpfs -o size=1g none target
-t tmpfs
指定文件系统类型为tmpfs
,即内存文件系统-o size=1g
指定大小为1g
,注意这里只有在实际占用的时候才会消耗内存none
指定挂载点为空,这里无需挂载点target
指定挂载目标,可自定义你想挂载的目录
然后你在target
目录下存放的文件,将会直接放入内存中
不用的话umount
即可,注意unount
后数据将清空!
方案二:使用Zram
Zram
即内存压缩技术,通过即时压缩数据获得更高的内存利用率,具体可以参考我的另一篇文章:Zram简明教程
1、获取zram设备
这里我们需要用到zramctl
这个命令,在Debian
中,这个命令在util-linux
包内,一般默认安装,或使用命令sudo apt install util-linux
安装
首先我们需要获取一个zram
设备,使用命令 sudo zramctl -f
假如输出 /dev/zram1
,这就是我们将要操作的zram
设备
2、配置zram设备
然后用下面的命令配置该zram
设备:
sudo zramctl -a zstd -s 2GiB /dev/zram1
-a zstd
指定压缩算法,可以用cat /sys/block/zram0/comp_algorithm
命令查看支持的压缩算法- 在压缩率上,一般zstd > lzo > lz4,在压缩速度上一般lz4 > lzo > zstd
-s 2GiB
指定原始空间大小,即未压缩的空间大小,实际压缩后占用的内存会比这小/dev/zram1
是我们刚才选中的zram
设备
然后使用 sudo zramctl
命令查看是否配置成功,如果有/dev/zram1
条目即成功
3、使用zram
当配置好后,zram
设备就可以当一个普通的块设备使用了,我们先给它格式化一下:
# 格式化为 Btrfs
sudo mkfs.btrfs /dev/zram1
这里使用
Btrfs
格式化,你也可以换成你想要的文件系统
接下来就可以像挂载普通磁盘那样挂载它了:
# 将 zram 挂载到 target 目录
sudo mount /dev/zram1 target
这样,存放在target
目录中的文件将会被透明压缩并最终存放在内存中,因为有压缩,实际占用内存会比原始数据小很多,能更高效率的利用你的内存
4、回收zram
回收之前请对重要数据做好备份
使用下面的命令回收zram
# 取消挂载zram设备
sudo umount target
# 释放zram设备
sudo zramctl -r /dev/zram1
警告
内存盘断电会丢失数据!!!
请及时备份重要文件!!!