Skip to content
VDS · 故障排查

机器无法启动

VPS 重启后无法启动时该怎么办:如何查看启动画面、分析常见原因,以及从恢复盘修复系统。

更新于 2026年8月23日

机器重启后无法通过 SSH 响应,并不一定是磁盘故障。大多数情况下,系统停在了某一步,正等着您:/etc/fstab 写错了、引导程序配置损坏,或者更新失败后的内核。

先看屏幕

在控制面板 /hosting/vds/m/<id> 中打开“控制台”标签页。有两种类型可用:

  • 文本控制台(串口)——方便阅读和复制内核消息,但始终是 80×24;
  • “屏幕”(VNC)——显示的内容与显示器相同:GRUB 菜单、全屏消息以及 Windows 画面。

在“屏幕”上,您可以准确看到停在了哪里。然后根据提示信息继续处理。

常见原因

Cannot open access to console, the root account is locked 或 Give root password for maintenance。 系统进入了紧急模式,通常是因为 /etc/fstab。输入 root 密码(在“访问”标签页中),然后删除有问题的行。预防措施:对于系统没有也能正常运行的挂载点,请指定 nofail 选项。

长时间显示 A start job is running for ...,持续一分半钟。 某个服务或挂载点正在等待超时。等它结束,然后查看上一次启动的日志:journalctl -b -1 -p err。

出现 GRUB 菜单和 grub> 提示符。 引导程序找不到自己的配置。可以从恢复磁盘修复。

选择内核后立即发生内核恐慌。 通常发生在内核更新之后。在 GRUB 菜单中选择“高级选项”,从上一个版本启动,然后回滚该软件包。

Windows:“正在撤销更改,请不要关闭计算机”循环出现。 更新回滚正在进行,可能需要半小时甚至更久。不要关闭机器,通过“屏幕”观察它。

恢复磁盘

一个通用的工具是 SystemRescue 启动模式:“访问”标签页 → 启动模式 → 恢复磁盘,然后重启。机器从镜像启动,root 无需密码即可登录,您的磁盘显示为 /dev/sda。

检查并挂载:

lsblk
fsck -f /dev/sda1            # only on an unmounted partition
mount /dev/sda1 /mnt
ls /mnt

直接在 /mnt 中编辑文件,例如 nano /mnt/etc/fstab。

对于需要系统工作环境才能完成的操作(重装内核、更新 GRUB),进入 chroot:

mount --bind /dev  /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys  /mnt/sys
chroot /mnt /bin/bash

grub-install /dev/sda && update-grub     # Debian, Ubuntu
grub2-install /dev/sda && grub2-mkconfig -o /boot/grub2/grub.cfg   # AlmaLinux
exit

然后在“访问”标签页中恢复正常的启动模式,并重启机器。忘记把模式切换回来是最常见的错误:机器会一次又一次地启动进入 SystemRescue。

保存数据并重新开始

如果系统无法修复,请在重装前复制数据。从恢复磁盘:

mount /dev/sda1 /mnt
tar czf - /mnt/var/www /mnt/etc | ssh user@other-server 'cat > vds-rescue.tar.gz'

之后,在“访问”标签页中重装系统,选择所需的版本。重装会完全擦除磁盘,而我们没有状态快照或自动备份,所以顺序正是这样:先复制,再重装。

避免再次发生

  • 在编辑 fstab、GRUB 和网络设置之前,检查语法:findmnt --verify、grub-script-check。
  • 内核更新后,不要删除上一个内核——它会作为备用选项保留在菜单中。
  • 将配置和数据的副本与机器分开保存。
  • 定期测试重启,而不是在紧急情况下才测试:一台六个月没重启过的机器会给您“惊喜”。

如果屏幕一片空白,控制台没有任何输出,“概览”中的图表也不更新,请带上机器编号联系支持——问题可能出在您的系统之外。