所以我像往常一样在台式电脑上,然后突然发生了这种情况:
在我研究该错误的一小段时间里,第一条消息[Firmware Bug]: the BIOS has corrupted hw-PMU
似乎与 HP 硬件有关(我的计算机连接了一台打印机)。问题是我的 CentOS 7 不再启动。我猜问题可能是因为以下消息:Corruption of in-memory data detected. Shutting down filesystem
。我还在同一台使用 Windows 双启动的台式计算机上问这个问题。
有办法从中恢复吗?我什至不知道从哪里开始寻找解决办法。
更新:
当我尝试启动 CentOS 时,它会向我显示与图像中所示相同的行(以 开头的行[ 2.0XXXXX] XFS (dm-1) ...
,然后进入紧急模式。然后它告诉我在 处有一个日志文件/run/initramfs/rdsosreport.txt
。我想将该文件复制到USB 驱动器,以便我可以共享错误日志,但显然我无法安装它。
使用dmesg
我可以看到我的随身碟已被检测到,但目录中没有与其关联的名称dev
。我已经尝试将我的随身碟格式化,ext2
但仍然遇到同样的问题。我在这里缺少什么吗?
任何帮助表示赞赏。
更新2:
事实证明,正如评论中所述,我的根文件系统因崩溃而损坏。我按照 shodanshok 的建议在我的 USB 记忆棒上启动了一个实时 CentOS 镜像,然后我选择了Troubleshooting
拯救现有 CentOS 安装的选项。
有趣的是,实时图像表明我的硬盘上没有找到 Linux 安装,所以我不知道该怎么办。我回到谷歌搜索解决方案,发现这篇博文。那里的人显然也有同样的问题,他使用以下命令解决了它:xfs_repair -L /dev/mapper/centos-root
。
我返回到实时 USB 启动并选择救援选项。实时系统无法像以前一样找到我的 Linux 安装。那次我进入 shell 并运行fdisk -l
看看是否可以手动查找并挂载我的系统分区。fdisk
向我展示了 50Gb 大小的/dev/mapper/cl-root
.我无法安装它。然后我运行命令xfs_repair -L /dev/mapper/cl-root
看看会发生什么。该过程结束后,我重新启动了计算机,CentOS 现在可以正常启动了。
答案1
某些原因导致内存损坏,该损坏被传播到根文件系统(准确地说是其日志)。所以 XFS 会自行关闭。要解决此问题,请从实时 CentOS 磁盘启动并执行xfs_repair
.
之后,您必须确定导致内存损坏的原因。我看到两种主要的可能性(除了运气不好):
- RAM 模块出现故障,您可以通过运行
memtest86
2 小时以上来查找故障; - SATA/电源线损坏/有缺陷或 PSU 损坏,这会导致磁盘驱动器上的元数据损坏以及随后元数据读取时的关闭。请报告输出
smartctl -a <disk>
以检查此问题。