记录一次Ubuntu系统无法正常启动故障处理
问题背景
公司的服务基本上都跑在阿里云的ECS上,公司自建的网络机房中只有少数几台物理服务器是供平时测试和人工智能小组跑算法训练用的。上边跑的服务一直都很稳定,没怎么到机房管过这几台机器,平时都是ssh过去处理一些问题。
结果今天上午的时候,人工智能组的算法大佬突然跑过来跟我说,他们跑模型用的一台高性能服务器(OS:Ubuntu14.0;Kernel:4.4.0)手动重启后,一直无法远程连接。(GPU服务器,大佬们更新一些显卡驱动之类的经常需要reboot之后生效)我快速ssh和ping了下,发现确实无法连接,意识到应该是机器跪了,于是有了下边的处理过程。
处理过程
(1) 到机房发现服务器电源正常,依然在运行。没有关机,插上显示器,发现重启过程卡在了一个接口一直不动,屏幕显示信息如下:
1 |
Loading Linux 4.4.0-101 generic... |
(2) emm,之前没有碰到过类似问题,遂Google了一下,查看了几条搜索结果,发现说的都是可能磁盘或者磁盘挂载有问题。考虑到这太机器经常进行几十G的图片写入,删除之类的操作。(OCR需求)在加上是普通的机械硬盘,有可能存在坏道和坏扇区。于是准备开机屏蔽挂载的数据盘,禁止数据盘开机自动挂载。
(3) 强制重启服务器,跳过BIOS接口之后,按shift进入GRUB,(别的版本可能是别的快捷键,一般屏幕上都会有提示)。进入GRUB后选择进入Ubuntu高级选项,选择recover的系统版本,然后选择root Drop to root shell promt。选择之后会提示修改root密码。修改密码后进行如下操作:
1 |
mount -w -o remount / |
(4)vim /etc/fstab
注释掉数据盘的自动挂载配置,reboot重新启动。
(5)开机恢复正常
后续
(1) 考虑到算法同事的使用问题,开机之后我手动帮他们挂载了硬盘。
(2) 之前的硬盘坏道只是我的猜想,接下来会用工具监测下磁盘坏道,验证下是不是磁盘的问题。(3TB机械盘,可能要扫描一段时间了…)
原文:大专栏 记录一次Ubuntu系统无法正常启动故障处理 · Chris's Blog