飞牛NAS内存压缩实战:8G内存秒变12.5G,小内存NAS的免费扩容方案
摘要
飞牛NAS近期上线了基于 zram 的内存压缩功能,通过将不活跃数据压缩后保留在内存中而非写入硬盘交换分区,有效缓解小内存NAS的内存瓶颈。本文详细介绍了该功能的适用场景、完整开启步骤、实际效果,以及完整的卸载还原教程。无需加装物理内存,零成本提升系统流畅度。
前言
折腾NAS的朋友应该都有这个体会——Docker容器越装越多,影视服务、下载工具一开,内存条就开始捉襟见肘了。尤其是4G、8G内存的机器,跑着跑着系统就开始卡。
飞牛NAS最近终于上了"内存压缩"功能,不用加内存条,纯软件层面就能把可用内存撑大不少。今天手把手教你怎么开。
原理
一句话说清楚:系统把暂时不活跃的数据压缩后继续放在内存里,而不是丢到硬盘的交换分区去。
内存的读写速度比硬盘快了不止一个数量级,所以这么一搞,系统卡顿明显减少,多任务切换也更流畅。
哪些人适合开?
内存大小 | 建议 |
|---|---|
4GB | 强烈建议开,效果立竿见影 |
8GB | 推荐开启 |
16GB(跑了很多Docker/虚拟机) | 可以开 |
至于32GB以上、日常占用不到50%的土豪玩家——真没必要折腾,感知不到差别。
开启教程
目前飞牛还没给UI界面,需要进终端用命令行操作,用 SSH 连接飞牛 NAS。
1. 禁用默认的 swapfile
先把系统自带的硬盘交换分区关掉,不然跟zram会打架。
编辑 fstab 文件:
找到这一行,在前面加个 # 注释掉:
保存退出:Ctrl + s ,再 Ctrl + X。

确认改好了没:
然后重启NAS。
2. 安装并配置 zram
重启回来后,依次执行以下命令:
几个关键参数说明:
lzo-rle:压缩算法,速度和压缩率都比较均衡。公测版目前只支持这个,内测用户可以换成 zstd(压缩率更高)
60:拿物理内存的60%来创建压缩空间,4G内存就会分出约2.3G的zram空间

实际效果
以我这台8G内存的NAS为例,开启后系统自动创建了大约4.5GB的zram压缩交换空间。算下来相当于8G变12.5G.
4G内存的机器同理,开启后zram空间约2.5GB,相当于4G变6.5GB。
如何卸载 zram 并还原?
万一用着不爽或者想恢复出厂状态,反操作也很简单。
第一步:停止并卸载 zram 服务
第二步:恢复 swapfile
把之前注释掉的那行改回来。编辑 fstab:
把这行前面的 # 去掉:
保存退出:Ctrl + s ,再 Ctrl + X。
第三步:重启并验证
重启 NAS,回来后确认 swapfile 已恢复:
看到 /swapfile 出现在输出里就说明还原成功了。
小提示:卸载后建议跑一下
free -h看看内存状态,确保交换分区正常挂载、没有残留的 zram 设备。如果swapon --show里还能看到 zram,手动执行sudo swapoff /dev/zram0关掉它就行。
结尾
内存压缩本质上是拿CPU算力换内存空间,所以CPU负载会略微上升,但换来的流畅度绝对值。它不能替代物理内存升级,但对小内存NAS来说,这绝对是零成本最优解。