在Linux系统中,虚拟内存通过交换空间(Swap Space)实现,当物理内存(RAM)不足时,系统会将部分闲置数据转移到交换区,避免进程崩溃,以下是增加虚拟内存的详细步骤:
检查现有交换空间
free -h # 查看内存和交换空间使用情况 swapon --show # 显示已激活的交换分区/文件
创建交换文件(推荐方式)
分配交换文件
sudo fallocate -l 4G /swapfile # 创建4GB文件(根据需求调整大小)``` #### **2. 设置权限** ```bash sudo chmod 600 /swapfile # 限制访问权限
格式化为交换空间
sudo mkswap /swapfile # 输出:"Setting up swapspace version 1..."
立即启用交换文件
sudo swapon /swapfile
- 验证:
free -h
或swapon --show
永久挂载交换文件
编辑 /etc/fstab
sudo nano /etc/fstab
在文件末尾添加
/swapfile none swap sw 0 0
保存后退出(Ctrl+X
→ Y
→ Enter
)。
优化交换空间使用(可选)
调整Swappiness值
控制内存使用阈值(默认60,范围0-100):
sudo sysctl vm.swappiness=10 # 临时生效
永久生效:
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
删除交换文件(如需撤销)
sudo swapoff -v /swapfile # 停用交换文件 sudo rm /swapfile # 删除文件 sudo nano /etc/fstab # 移除对应的挂载行
注意事项
-
大小建议:
- 物理内存 ≤ 2GB:Swap 设置为 RAM 的 2 倍
- 物理内存 > 2GB:Swap 设置为 4GB 或与 RAM 等大
- 最大不超过 8GB(避免资源浪费)
-
性能影响:
- 交换文件位于机械硬盘(HDD)时性能较低,SSD 影响较小
- 过度依赖 Swap 可能导致系统变慢,优先考虑升级物理内存
-
安全操作:
- 操作前备份重要数据
- 确保磁盘有足够空间(用
df -h
检查) - 避免在已挂载的交换文件上重复操作
通过创建交换文件,Linux 可灵活扩展虚拟内存,提升系统稳定性,此方法无需重新分区,适用于云服务器和本地环境,定期监控内存使用(top
、htop
)能帮助合理调整 Swap 配置。
引用说明:本文方法基于 Linux 内核官方文档及社区最佳实践,参考来源包括 Ubuntu SwapFaq、Kernel.org Swap 指南,操作需 root 权限,建议在生产环境前测试。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/4695.html