为了解决一个bug,不小心点了个大数据量文件导出测试,之后服务器可能是因为CPU和内存占用爆满就崩掉了,然后我心态也崩掉了。之后去机房重启服务器,重启后,linux相关各种命令全部都用不了。刚开始还不敢相信是服务器出了什么问题,所以又关机了两分钟,重启再试一下,不过还是在报错。。。
报错:
页面输命令提示:Input/output error
服务器重启也有报错信息:Failed to open pack file: Input/output error
去网上也搜了一些方案,在此记录一下,当然希望后续不要再来一次了。
尝试方案一:
重启服务器之后,页面有一段时间卡在这里,然后看网上有人说是分区挂载失败,是分区表变化导致,需要重建grub引导。
登录root账号,输入 update-grub
,然后重启systemctl reboot
这方法试了重启后,问题没有解决,尝试下一种。
尝试方案二:
又去搜了报错信息,“Input/output error”是关键字,是IO有问题,所以问题应该是Linux系统文件损坏了,其他类似这样IO有问题,或者系统出现类似“XFS”有问题的都可以通过修复Linux文件系统的方式解决。
重启服务器进入紧急模式,emergency mode 可以使用journalctl -xb
查看日志信息,查看报错信息。
输入 df -h
列出文件系统的整体磁盘空间使用情况。
使用命令修复系统盘文件系统,之后重启服务器。
xfs_repair -L /dev/sda2
服务器正常启动成功了。
看到有解释说 -L有可能会损失部分数据。
重启后,造成服务器崩坏的一个服务相关文件夹被清掉了,不过好在数据相关的没问题,应用程序或者服务这种在拷贝进去一个可以了。
参考文章:
【问题处理】常见Linux系统启动失败
CentOS7.9 开机进度条满了卡住不动的修复方法