我为交叉发帖道歉,因为这个问题在Unix & Linux Stack Exchange也存在。我需要找到一个答案。
我们的虚拟机运行在VMWare上。我不确定版本,但我想说是ESX 6(或vSphere 6)。我支持和管理的客人都是CentOS 7。
今天,我通过扩展物理卷和逻辑卷来使用最近增加的磁盘空间。物理分区之前已经用fdisk扩展了,只是我没有完成调整LVM大小的步骤。分配和调整大小的过程很顺利,没有任何问题。然后,我重新启动了虚拟机,以确保更改后没有发生错误。
这就是我的问题所在。重启后,我无法再通过SSH进入虚拟机。我可以通过vSphere客户端访问虚拟机。虚拟机的状态看起来不错。它处于运行状态,我可以看到所有正在使用的IP地址(我们运行了几个docker容器,所以显示了许多IP地址),有CPU和内存的使用情况。但是,好像没有一个服务启动,比如ssh、docker(因为我们有几个web应用部署在容器中,我无法访问web应用。
重启后,我尝试ssh进入虚拟机,连接超时。所以我从vSphere客户端打开了一个远程控制台,并尝试用两个不同的管理员用户登录。两种方式都不行,我在似乎30秒后又返回到登录提示。我已经重新启动了虚拟机,尝试不同的选项,如使用救援内核,进入grub,并尝试各种设置,如root,linux内核等。每次虚拟机都能启动并加载到登录提示,就是这样。
我想,如果有一个错误,我会看到,并被带到一个紧急crash shell,但没有这样的事情。从所有的表象来看,虚拟机似乎已经正确启动。
在我们的vCenter上,我只有最低限度的权限。所以我的问题是
我能够找出如何进入恢复提示并确定问题。
我重新启动了虚拟机,在grub菜单上,我只需按 "c "进入一个控制台。然后,我将一个ISO连接到虚拟CDROM,并退出grub命令行。这样一来,虚拟机就可以从 ISO 启动,让我进入恢复模式。
然后,我可以查看消息日志,我看到我在那里调整了fs的大小,并做了pv和lv检查,然后重新启动。日志显示系统启动,一直正常,但是一旦达到运行状态,就会有各种奇怪的项目列出,比如。
还有很多其他的事情。我还意识到了另外一件事。我看到firehol启动了,我记得我安装了它,但一直没有完成配置,我以为我卸载了它。于是我通过yum把firefol和ipranges删除了。我还清理了varlibdocker的所有镜像、容器和卷。然后我重启了虚拟机,我能够ping到ip地址,我不能ssh进入虚拟机,一切似乎都在工作。