1. 调整Swap空间大小
Swap空间的大小需结合物理内存容量和使用场景设置。传统经验法则建议为物理内存的1.5-2倍,但现代系统更强调灵活性:
2. 优化Swappiness内核参数
Swappiness(范围0-100)控制内核使用Swap的倾向:值越高,系统越倾向于将内存数据换出到Swap;值越低,越优先使用物理内存。默认值通常为60,可根据需求调整:
sudo sysctl vm.swappiness=10;/etc/sysctl.conf文件,添加vm.swappiness=10,然后运行sudo sysctl -p使配置生效。3. 选择合适的Swap类型(文件 vs 分区)
sudo fallocate -l 4G /swapfile # 创建4GB Swap文件(大小按需调整)
sudo chmod 600 /swapfile # 设置权限(仅root可读写)
sudo mkswap /swapfile # 格式化为Swap空间
sudo swapon /swapfile # 启用Swap
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab # 添加到fstab实现开机自启
4. 使用SSD提升Swap性能
Swap操作的本质是磁盘读写,SSD的读写速度(尤其是随机读写)远高于HDD,能显著降低Swap延迟。若系统仍有机械硬盘,建议将Swap文件或分区放在SSD上(如Ubuntu安装时选择SSD作为系统盘,并在其中创建Swap文件)。
5. 启用zRAM压缩交换空间
zRAM是一种内核压缩内存技术,将部分RAM用作压缩的Swap空间,减少对物理磁盘的依赖,提升Swap性能(尤其适合内存较小的系统)。配置方法:
sudo apt update && sudo apt install zram-config # 安装zRAM配置工具
sudo systemctl enable zram-config && sudo systemctl start zram-config # 启用服务
安装后,系统会自动创建压缩的Swap空间(大小通常为物理内存的1/2-1/4),无需手动调整。
6. 监控与维护Swap使用
定期监控Swap使用情况,及时发现异常:
free -h命令查看内存和Swap的使用量(重点关注“Swap used”列);swapon --show命令查看当前启用的Swap设备及大小;htop或top命令实时监控进程的内存和Swap占用(按M键按内存排序,P键按CPU排序)。