虚拟机启动卡死you might want to save “/run/initramfs/rdsosreport.txt

大半夜耍了一下虚拟机,结果手欠,按错键了非正常关机,导致虚拟机起不来了

从报错信息 Corruption detected. Unmount and run xfs_repair 可以看出,XFS 文件系统的元数据(inode)出现了损坏,通常是因为异常断电、强制关机或磁盘 I/O 错误导致的。

因为本机已经损坏无法登录,无法输入命令lsblk, 换了台虚拟机,两个都一样的配置另一台没有配置docker等的新机器,输入命令确认分区如下

lsblk 输出可以看到:

  • /dev/mapper/centos_centos7-root 是根分区(/),使用 XFS 文件系统。
  • /dev/sda1/boot 分区,也为 XFS。这两个分区都可能是之前报错的位置,其中根分区的概率更大。

🛠️ 修复步骤

  1. **进入单用户模式(推荐)**直接在运行的系统上无法修复根分区,需要重启并进入单用户模式:

    • 重启时在 GRUB 菜单选择内核,按 e 进入编辑模式。
    • 找到以 linux16 开头的行,在末尾添加 init=/bin/bash
    • Ctrl+X 启动,进入只读模式的单用户环境。
  2. 重新挂载根分区为可读写

    bash

    运行

    复制代码
    mount -o remount,rw /
  3. 卸载目标分区(如果是 /boot

    bash

    运行

    复制代码
    umount /dev/sda1
  4. 执行 XFS 修复

    • 修复根分区: bash

      运行

      复制代码
      xfs_repair -L /dev/mapper/centos_centos7-root
    • 修复 /boot 分区:

      bash

      运行

      复制代码
      xfs_repair -L /dev/sda1

    ⚠️ 注意:-L 参数会清除日志,仅在常规修复失败时使用,可能丢失未提交的数据。

  5. 验证并重启

    bash

    运行

    复制代码
    xfs_repair -n /dev/mapper/centos_centos7-root
    exec /sbin/init

输入完,如下,不是:/#开头了 是bash-4.2#

这时候重启虚拟机,输入用户名密码登录

服务恢复正常

相关推荐
肥胖小羊6 小时前
企业微信自建应用多环境联调与路由代理方案
服务器·前端·网络
Alan_6916 小时前
第三方API对接的通用封装模式
服务器·开发语言·php
buhuizhiyuci6 小时前
【Linux 篇】数字世界的通信管道 —— 匿名管道与进程池深度实战解析
linux·运维·服务器
十六年开源服务商6 小时前
WordPress邮件日志记录定制开发指南2026
运维·开源
无锡耐特森6 小时前
ModbusTCP转Profinet:打通潜油电泵工业互联新路径
linux·运维·服务器
晨陌y7 小时前
多台服务器怎么统一监控?哪吒面板部署、钉钉告警与远程访问教程
运维·服务器·钉钉
阿标在干嘛7 小时前
政策快报平台日志系统的3次演进:从文件到ELK到告警
运维·elk·jenkins
味悲7 小时前
Apache HTTP 服务器配置
服务器·http·apache
啦啦啦啦啦zzzz7 小时前
oat++框架应用之do、dao、service
服务器·c++·mysql·oatpp
云计算磊哥@7 小时前
运维开发宝典059-大型网站nginx服务器管理全集5
服务器·nginx·运维开发