内存紧缺,不妨给NAS增加SWAP分区(2026.03修订)

2026-03-19 23:12:22 0点赞 3收藏 0评论

当下内存紧缺,我的绿联 DXP4800Plus 原本有 16G 内存,最近为了买手机不得不卖一根内存折现。

4G-8G 内存的 NAS 我建议可以考虑增加 SWAP 分区,保障 docker 等服务的稳定性。

首先用命令看一下绿联 UGOS Pro 系统的 SWAP 分区策略:

#查看内存使用情况 free -h #查看 SWAP 分区情况 sudo swapon --show内存紧缺,不妨给NAS增加SWAP分区(2026.03修订)内存紧缺,不妨给NAS增加SWAP分区(2026.03修订)

绿联 DXP4800Plus 在系统盘会设置 2G 的 SWAP 分区;

此外开启内存压缩会有个 50% 内存大小的 zram 分区(内存压缩功能);

在 Docker 分区会有一个 4G 大小的 Docker 用的 SWAP 分区;

所以绿联 DXP4800Plus 的 SWAP 分区设置比较合理,也基本够用。我还是想在固态硬盘上新增一个 SWAP 分区减少对系统盘写入。注意 SWAP 一定要创建在固态硬盘上,不然会明显拖慢速度。

内存紧缺,不妨给NAS增加SWAP分区(2026.03修订)

#查看固态硬盘分区 lsblk

有两个固态,一个是系统盘,一个是我加装的固态盘分区是 /volume2

内存紧缺,不妨给NAS增加SWAP分区(2026.03修订)

操作流程:

# 创建 8G 的空文件 sudo fallocate -l 8G /volume2/swapfile # 设置权限 (必须为 600,否则不安全) sudo chmod 600 /volume2/swapfile # 格式化为 swap sudo mkswap /volume2/swapfile sudo swapon /volume2/swapfile -p 5

增加一个启动脚本,开机后启动 SWAP 分区:

sudo nano /usr/local/bin/startswap.sh sudo chmod +x /usr/local/bin/startswap.sh

我把 SWAP 分区优先级设置在系统 SWAP 分区前面,所以优先写入创建的 SWAP 分区:

#!/bin/bash # 在启动脚本中 (如 /etc/rc.local 或 NAS 的自定义脚本界面) sleep 45 # 等待磁盘挂载 if [ -f /volume2/swapfile ]; then swapon /volume2/swapfile -p 5 fi

创建服务实现开机自动挂载 SWAP 分区:

sudo nano /etc/systemd/system/startswap.service

[Unit] Description=开机自启脚本 After=network.target # 等网络就绪后执行 [Service] Type=oneshot ExecStart=/bin/bash /usr/local/bin/startswap.sh User=root [Install] WantedBy=multi-user.target

sudo systemctl daemon-reload sudo systemctl enable startswap.service sudo systemctl start startswap.service

这样就大功告成了,其他 NAS 也可以用类似思路优化一下。主要目的增加给小内存设备增加 SWAP,减少系统盘写入。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
  • NAS
    话题:NAS 关注
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
3
扫一下,分享更方便,购买更轻松