首页主机资讯centos swap分区丢失怎么办

centos swap分区丢失怎么办

时间2025-11-06 00:42:04发布访客分类主机资讯浏览327
导读:CentOS Swap分区丢失的解决方法 一、临时恢复(进入系统后) 若系统已启动但提示swap分区不存在,可通过以下步骤快速恢复: 检查当前swap状态:运行swapon --show或free -h,确认是否有swap分区/文件启用。...

CentOS Swap分区丢失的解决方法

一、临时恢复(进入系统后)

若系统已启动但提示swap分区不存在,可通过以下步骤快速恢复:

  1. 检查当前swap状态:运行swapon --showfree -h,确认是否有swap分区/文件启用。若无,继续下一步。
  2. 创建临时swap文件(若无可用分区):
    # 创建1G大小的swap文件(可根据需求调整大小,如2G则count=2048)
    dd if=/dev/zero of=/swapfile bs=1M count=1024
    # 设置权限(仅root可读写)
    chmod 600 /swapfile
    # 格式化为swap空间
    mkswap /swapfile
    # 启用swap文件
    swapon /swapfile
    
  3. 验证swap是否启用:再次运行swapon --show,应显示新创建的swap文件。

二、永久恢复(需修改配置文件)

临时恢复仅对当前会话有效,重启后会失效。需通过以下步骤永久恢复:

  1. 编辑/etc/fstab文件
    vi /etc/fstab
    
    • 若之前使用swap文件:添加一行(替换为你的swap文件路径):
      /swapfile none swap sw 0 0
      
    • 若之前使用LVM swap分区:添加对应的LVM逻辑卷(替换为你的实际路径,如/dev/mapper/centos-swap):
      /dev/mapper/centos-swap swap swap defaults 0 0
      
    • 若之前使用普通分区:添加对应的分区设备(替换为你的实际分区,如/dev/sda3):
      /dev/sda3 swap swap defaults 0 0
      
  2. 保存并退出:按Esc→输入:wq→回车。
  3. 重新启用swap
    swapon -a  # 启用/etc/fstab中定义的所有swap
    
  4. 验证永久生效:重启系统后运行free -h,确认swap空间已自动启用。

三、若系统无法启动(进入dracut模式)

若删除swap分区后系统无法启动(如提示/dev/centos/swap does not exist),需进入dracut救援模式修复:

  1. 进入dracut模式:重启系统,在GRUB菜单选择“Rescue a CentOS system”或按Ctrl+Alt+F2进入命令行。
  2. 挂载系统根分区
    mkdir /tmp1
    mount /dev/centos/root /tmp1  # 替换为你的根分区(可通过`lsblk`查看)
    
  3. 修改GRUB配置
    • 编辑/tmp1/etc/default/grub,找到GRUB_CMDLINE_LINUX行,删除rd.lvm.lv=centos/swap(若有)。
    • 编辑/tmp1/boot/grub2/grub.cfg,删除所有rd.lvm.lv=centos/swap(通常有两处,需全部删除)。
  4. 重新生成initramfs(可选,确保配置生效):
    chroot /tmp1
    dracut -f
    exit
    
  5. 重启系统
    reboot
    

四、预防措施

  1. 定期备份swap配置
    # 备份/etc/fstab
    cp /etc/fstab /backup/fstab.bak
    # 若使用LVM,备份VG/LV信息
    vgcfgbackup -f /backup/vg_backup.txt centos
    
  2. 避免手动删除swap分区:删除前需确认分区用途,可通过lsblkblkid查看分区类型。
  3. 使用swap文件替代分区(可选):swap文件更灵活,无需修改分区表,删除或创建更方便。

以上步骤覆盖了CentOS swap分区丢失的常见场景及解决方法,操作前请务必备份重要数据,避免误操作导致数据丢失。

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


若转载请注明出处: centos swap分区丢失怎么办
本文地址: https://pptw.com/jishu/743534.html
Docker端口映射在CentOS如何操作 Docker存储卷在CentOS如何设置

游客 回复需填写必要信息