Linux系统中关闭swap分区的完整操作步骤
作者:会飞的土拨鼠呀
这篇文章主要介绍了在Linux系统中关闭swap分区的步骤,包括查看swap使用情况、临时关闭swap、永久关闭swap并编辑/etc/fstab文件、重启系统验证以及注意事项,需要的朋友可以参考下
在 Linux 系统中关闭 swap 分区(或交换文件)的步骤如下,请务必在操作前保存所有数据,以免丢失:
完整操作步骤:
1. 查看当前 swap 使用情况
free -h swapon --show # 查看活跃的 swap 设备
示例输出:
NAME TYPE SIZE USED PRIO /dev/sdb1 partition 2G 0B -2
2. 临时关闭 swap
sudo swapoff -a # 关闭所有 swap 分区/文件(立即生效但重启失效)
3. 永久关闭 swap
编辑 /etc/fstab 文件:
sudo vim /etc/fstab # 也可用 nano 或其他编辑器
找到 swap 相关行 ,在行首添加
注释或直接删除该行
示例(注释前):
/dev/sdb1 none swap sw 0 0 # 或针对 swap 文件: /swapfile none swap sw 0 0
修改后:
#/dev/sdb1 none swap sw 0 0 # 已注释禁用
提示:使用 grep swap /etc/fstab 快速定位 swap 配置。
4. 重启系统验证
sudo reboot
重启后检查:
free -h # Swap 应显示 0 swapon --show # 无输出即表示已关闭
重要注意事项:
内存不足风险:
关闭 swap 后系统将无法使用磁盘空间缓解内存压力,若物理内存耗尽会导致进程崩溃或系统锁定。建议仅在以下情况操作:
- 物理内存非常充足(如服务器的内存 > 总需求峰值)
- 特定优化场景(如数据库服务器)
临时启用 swap:
若需临时恢复 swap(不修改 fstab):
sudo swapon -a # 重新启用 /etc/fstab 中未注释的 swap
删除 swap 文件(可选):
如果使用 swap 文件且想彻底删除:
sudo swapoff /swapfile # 先关闭 sudo rm /swapfile # 删除文件
调整内核参数(高级可选):
如需彻底禁止系统使用 swap(即使 fstab 存在配置):
echo "vm.swappiness=0" | sudo tee -a /etc/sysctl.conf # 禁止倾向使用 swap sudo sysctl -p # 立即生效
常见问题解决:
swapoff卡住:通常因 swap 使用率较高引起,尝试:- 提前清理内存占用(结束非关键进程)
- 增量关闭:
sudo swapoff /dev/sdb1(指定具体设备) - 耐心等待(系统需将 swap 数据移回内存)
- 重启后 swap 仍存在:
检查是否还有其他 swap 项在/etc/fstab中未被注释,或存在 systemd 的 swap 单元(通过systemctl list-unit-files | grep swap检查)。
通过以上步骤,您已安全关闭 Linux 系统的 swap 分区。
到此这篇关于Linux系统中关闭swap分区的完整操作步骤的文章就介绍到这了,更多相关Linux关闭swap分区内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
