首页主机资讯Ubuntu Swap失效怎么解决

Ubuntu Swap失效怎么解决

时间2025-12-18 20:29:04发布访客分类主机资讯浏览228
导读:Ubuntu Swap失效排查与修复 一、快速自检 查看是否启用:运行free -h,若Swap为0或未显示,说明未启用。 查看当前交换区:cat /proc/swaps 或 swapon --show。 检查设备与配置:用sudo bl...

Ubuntu Swap失效排查与修复

一、快速自检

  • 查看是否启用:运行free -h,若Swap0或未显示,说明未启用。
  • 查看当前交换区:cat /proc/swapsswapon --show
  • 检查设备与配置:用sudo blkid确认交换分区/文件的UUID,再核对**/etc/fstab中对应的UUID**与挂载项是否一致。
  • 查看内核与系统日志:dmesg | tailjournalctl -xe,定位挂载失败或设备不存在的报错。
    以上命令能快速判断是“未启用”“配置错误”还是“设备故障”。

二、常见原因与对应修复

  • 配置指向了错误的UUID
    现象:开机出现“A start job is running for /dev/disk/by-uuid/… (1min 30s)”。
    处理:
    1. blkid获取当前交换分区/文件的新UUID
    2. 编辑**/etc/fstab**,将swap行中的旧UUID替换为新UUID(确保行首无“#”);
    3. 重启验证。
  • 交换分区未格式化或被改动后未重新启用
    处理:
    1. GParted将目标分区格式化为linux-swap
    2. 右键启用交换空间或执行sudo swapon /dev/sdXY
    3. 在**/etc/fstab中以UUID=… none swap sw 0 0**形式写入;
    4. 重启。
  • 使用swap文件但开机未自动启用
    处理:
    1. 创建并启用:
      • 建议方式:sudo fallocate -l 2G /swapfile(或按需设定大小)
      • 兼容方式:dd if=/dev/zero of=/swapfile bs=1M count=2048
      • 格式化:sudo mkswap /swapfile
      • 启用:sudo swapon /swapfile
    2. 持久化:在**/etc/fstab加入/swapfile none swap sw 0 0**;
    3. 验证:swapon --showfree -h
  • 休眠不可用(hibernate)
    处理:
    1. 确保交换分区/文件已启用且容量≥物理内存;
    2. 编辑**/etc/default/grub**,在GRUB_CMDLINE_LINUX_DEFAULT中添加resume=UUID=交换分区UUID
    3. 更新引导:sudo update-grub
    4. 测试:sudo systemctl hibernate
      以上步骤覆盖了配置错误、分区未启用、swap文件未持久化以及休眠支持等高频场景。

三、验证与优化

  • 验证:
    • 运行free -h确认Swap已分配且可用;
    • 运行swapon --show查看具体设备或文件;
    • 查看日志:dmesg | tailjournalctl -xe确认无挂载错误。
  • 调整使用倾向(可选):
    • 查看:cat /proc/sys/vm/swappiness(默认通常为60);
    • 临时调整:sudo sysctl vm.swappiness=20
    • 永久生效:在**/etc/sysctl.conf添加vm.swappiness=20**后重启。
  • 多交换区的优先级(可选):
    • 启用并设置优先级:sudo swapon -p 10 /dev/sdXY(数值越大优先级越高)。
      这些操作可确认修复效果,并按需优化系统对交换空间的使用策略。

四、应急与回退

  • 临时禁用全部交换:sudo swapoff -a(排查异常时很有用)。
  • 仅临时启用某个交换:sudo swapon /dev/sdXYsudo swapon /swapfile
  • 若**/etc/fstab**配置有误导致无法进入系统:
    • 进入恢复模式或LiveCD/救援环境,挂载根分区并修正**/etc/fstab**中的swap行(或先注释掉swap行以正常启动),再按上文步骤恢复。
  • 若只是想先恢复启动速度,可在**/etc/fstab**中注释swap行,待修复完成后再恢复。
    上述方法可在不影响数据的前提下快速恢复系统可用性,并便于进一步排错。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Swap失效怎么解决
本文地址: https://pptw.com/jishu/775457.html
如何在Linux上成功部署K8S ThinkPHP如何实现数据加密传输

游客 回复需填写必要信息