virtualbox虚拟机异常暂停
昨天下午运营的人告诉我,xx后台登陆不上,然后我远程连接过去,不通。直接去宿主机,也就是virtualbox看。我一开始以为关机,重启搞掂。重启一次不行,就重启两次;两次不行,再重启多次。因为遇到virtual box 里面的虚拟机异常关机也不是一次两次的事了。不过老实说,这个报错我第一次见,这是“暂停”,而不是“异常关机“
重启多次,也许有1~2次能开成功的,但是开服务又暂停了。状况就是远程连接突然失联,去virtual box看,上面的非致命性错误
于是只能远程登陆virtual box这台宿主机,看日志,如下:
翻了一轮日志:/var/log/messages,报错时间点如下:
Jun 22 23:58:14 202 kernel: blk_update_request: I/O error, dev sda, sector 41584592 Jun 23 00:00:00 202 kernel: blk_update_request: I/O error, dev sda, sector 41590080 Jun 23 00:00:05 202 kernel: blk_update_request: I/O error, dev sda, sector 41585488 Jun 23 00:01:56 202 kernel: blk_update_request: I/O error, dev sda, sector 41590904 Jun 23 09:26:39 202 smartd[803]: Device: /dev/sda [SAT], 4 Currently unreadable (pending) sectors
谷歌查到,很可能是磁盘扇区坏了,于是按这篇文章,用hdparm查了一轮:
我的测试结果,是有两个扇区坏了,另外两个估计是假死(还没验证)
硬件坏,貌似没查到好的办法根治。
幸好我之前在EXIS 服务器上(是真的戴尔服务器,不是这台用家庭电脑台式机装的virtualbox!!!),把这台硬盘扇区坏的服务器东西迁移了过去,虽然有些文件并不是最新的,但从gitlab上重新pull下来,更新最新代码,充当后台发新闻还是可以的,目前暂时没收到运营人员报障(这几天还是要跟进下有没有使用上跟原服务器不同的地方)
想到坏掉的服务器可能里面有非常重要的文件,我就尝试下有没有其他办法能恢复,即使能查看原服务器里面文件也好呀。灵机一闪,决定新建一个虚拟机,新建硬盘的时候选择坏掉的机器的虚拟硬盘,如下图:
竟然新虚拟机打开之后就是坏机的东西(估计没有读到坏扇区,感动~),不过里面的文件好像不是最新的,可能还得读回之前坏机的快照才能恢复最新。。。另外注意下,新建的虚拟机的mac地址是不同的。