终端起不来或卡在「正在启动」怎么排查
本页覆盖从终端按下电源到进入桌面之间的三类现场故障:停在「正在连接服务器…」、停在「正在启动」、进了系统但显示不正常。每一节都给出「先做什么、看什么、什么情况下算正常」。
一、先分清卡在哪一步
不同画面对应完全不同的原因,先对号入座再往下看,不要一上来就重下镜像。
| 现场看到的画面 | 卡在哪个阶段 | 看本页哪一节 |
|---|---|---|
| 屏幕全黑 / 根本没出启动菜单 | 网络引导阶段 | 见 启动菜单使用说明,本页不展开 |
| 菜单出来了,中间显示「正在连接服务器…」 | 终端联网、注册、首轮同步 | 第二节 |
| 选中系统回车后停在「正在启动」,硬盘灯持续闪 | 引导交棒 / 系统加载 | 第三、四、五节 |
| 系统进去了,但分辨率只有 800×600 且改不了 | 进系统之后 | 第六、七节 |
二、停在「正在连接服务器…」
开机头几秒到几十秒出现这个画面是正常的:此时后台服务还在联网、注册、做首轮同步。这一阶段是有意做了门禁的——
1,暂不响应的:下载、上传、U 盘写入、缓存管理等依赖服务与服务器数据的操作键。按下去没有反应属正常,不是功能坏了。
2,仍然可用的:网络设置、DHCP 中继、清盘等纯本地工具,以及帮助与日志查看、上下浏览。连不上服务器时的自救入口一直留着。
3,加载态带兜底超时,默认 30 秒:即使服务器一直连不上,到点也会自动撤下加载屏、恢复全部按键,不会把人永久锁在加载界面。服务器明确拒绝本机时会立即解除并显示红色告警条,按告警文字处理即可。
超过这个窗口仍连不上、管理台上该终端始终「不在线」,按下面顺序查:
1,在启动菜单按 F2 打开网络设置,核对服务器 IP、本机 IP / 掩码 / 网关,或确认 DHCP 是否按预期自动获取。字段说明见 使用开机选单 的「F2 — 网络配置」一节。
2,如果是多网卡机型、或系统里存在内核自建的隧道类虚拟网卡:老版本启动客户端可能把一张没有 MAC 地址的隧道网卡选成了主网卡,后果是身份取不到、真实网卡被当作非主网卡关掉、启动期「等待取到 MAC」原地无限重试,表现就是永远不在线、按键无响应。
3,该问题已在新版启动客户端修复:枚举网卡时排除全部隧道 / 虚拟接口,改用「能不能实际取到 MAC」作为最终判据,等 MAC 改为有限次重试,且主网卡取不到 MAC 时不再关闭其它网卡。修复位于启动镜像内的客户端,须随新版启动镜像重新打包下发后现场才生效。
4,来不及换镜像时,可在该终端的网络启动参数中点名指定网卡(形如
eth=eth0)先行恢复。该改动建议联系服务提供方协助完成。
三、本地缓存启动停在「正在启动」:先把 U 盘拔掉
这是最容易被忽略、也最容易验证的一条。
1,拔掉机器上所有 U 盘 / 移动硬盘,再开机试一次。
2,确认缓存盘本身没有建在 U 盘等可移动设备上——可移动介质本就不允许作为缓存盘成员。
3,若拔盘后仍停在启动阶段,按「缓存盘还在不在」的方向查:盘是否被拔掉或换过、缓存标记是否被擦掉、盘序是否变化。
产品当前的行为口径:
- 开机阶段的缓存盘识别不再把可移动设备纳入探测,判定只查询设备总线类型 / 系统属性、不读取介质数据,因此响应缓慢或半损坏的 U 盘不会再拖慢甚至卡死识别。
- 若现场把缓存盘放在 USB 设备上(不受支持的形态),该设备不会再被识别为缓存盘。
- Linux 侧在缓存盘确实缺失时,识别会持续等待直到缓存盘出现(此前约 16 分钟放弃的上限已撤销),表现就是停留在启动阶段——这是与产品历史一致的行为,按上面的方向排查即可,不必等它自己超时。
生效前提
Linux 侧需在制作工具里重跑「编译驱动」取到新驱动,并随启动镜像下发;Windows 侧随新版驱动包生效。启动镜像没换,现象不会变。
四、EFI 缓存启动:现在会如实报错,不再无声停留
如果现场是 EFI 方式的缓存启动,「停在正在启动」曾经有一种典型形态:虚拟盘上找到了文件系统,但两个系统引导文件都加载不起来,启动流程却把「成功」返回给了上层,于是既不尝试备用路径、也不报错,画面与真死机无法区分。
当前版本的行为:
- 引导文件逐个尝试加载全部失败时如实返回失败;上层随即改走备用的直接文件启动路径(该路径有更彻底的启动文件查找,包括大小写不敏感的目录枚举)。
- 备用路径仍失败,才报告启动失败,不再无声停留。
- 副作用是好的:个别原本依赖备用路径才启动得起来的机型,可能因此由卡死变为能启动。
判读
如果现场终端仍是「无声停在正在启动、屏幕一个字都不多」,说明服务器上的 EFI 启动文件槽位很可能还是旧版引导产物,先把引导文件更新到位再继续排查。本条改动只影响「全部引导文件加载失败」这一失败分支,正常可启动的场景行为不变。
五、还是定位不了:用调试版引导文件看它到底卡在哪
「正在启动」这张画面出现后,正式版引导程序不再有任何屏幕输出,现场无法区分三类根因:启动失败后静默停留、已交棒但系统加载极慢、磁盘读取路径异常打转。为此可向服务提供方索取调试版 EFI 引导文件。
两种用法(二选一):
1,替换服务器启动文件槽位:把调试版临时替换到服务器上的 EFI 启动文件位置,该终端下次开机即用调试版启动。
2,U 盘直启:调试版同时提供 U 盘直启镜像形态,写入 U 盘后从 U 盘启动即可测试,无需改动服务器上的网络启动文件——只想验一台机器时用这种更省事。
屏幕上能看到什么:
- 「正在启动」之后的每一步都实时上屏:挂载虚拟盘 → 定位启动分区 → 查找并加载系统引导文件 → 交棒;启动失败的具体原因直接显示在屏幕上。
- 虚拟盘读取心跳:系统加载器读盘期间,周期性显示累计读取次数、当前读取位置、累计数据量与耗时。三种形态一眼可分:
| 屏幕上的读盘心跳 | 说明 | 排查方向 |
|---|---|---|
| 数字在推进,但推进很慢 | 读得到、就是慢 | 缓存盘 / 链路速度、服务器磁盘性能 |
| 位置反复回到同一处 | 同一位置反复重读 | 该处数据可能有问题,考虑重下或换缓存盘 |
| 数字长时间不动 | 完全没有读取 | 引导交棒或磁盘通路异常 |
- 调试版还会在启动前打印虚拟盘的 MBR 分区表(全部四个分区项),并枚举固件挂出的全部文件系统、逐个标注是否属于虚拟盘、两个系统引导文件是否存在——现场拍一张照片就能判明客户机看到的磁盘内容与预期是否一致。
- 调试版屏幕带有明显的构建日期标记,可确认现在跑的确实是调试版。
排障结束必须换回正式版
调试版的屏幕日志会明显拖慢启动过程,仅供排障使用。收工时把服务器启动槽位的原文件恢复回去(或取下 U 盘)即可。正式版本身不产生这些日志,行为与此前完全一致。
六、进了系统但分辨率被锁在 800×600
现象:UEFI 无盘终端进入 Windows 后分辨率被锁死 800×600,系统显示设置里的分辨率下拉呈灰色、没有其它选项;同一台机器本地直接装系统却能拿到正常分辨率。
当前版本已在引导侧修复:UEFI 引导在把控制权交给 Windows 引导程序之前,先把显示恢复到固件开机时的原始模式(即显示器协商出的原生分辨率),系统继承到的即为正确分辨率——按每台机器 / 每台显示器自动取,不写死某个固定值。
1,生效方式:以新的 UEFI 引导文件替换服务器上的原文件,终端下次开机即生效。
2,请注意这是「自动给到正确的单一分辨率」,并非让系统内的分辨率下拉变成可多档切换。未装厂商显卡驱动时(系统使用「Microsoft 基本显示适配器」),下拉仍只有当前这一档,这是系统固有限制。
3,需要在系统内自由切换多档分辨率,仍需在镜像中安装该机的显卡驱动。
4,若引导文件已更新、系统里仍是低分辨率,用第七节的「启动最高分辨率」按钮从终端侧再补一刀。
七、终端上的桌面维护工具箱
这是随 Windows 客户端安装到终端本机的图形自维护工具,现场人员在终端上就能用,不必回控制台。
| 按钮 | 用途 |
|---|---|
| IP 查看 | 查看本机网络地址信息 |
| 防火墙 | 本机防火墙相关处理 |
| 网络检测 | 本机网络连通性检测 |
| 最佳分辨率 | 运行期把屏幕切到当前可选的最高分辨率 |
| 启动最高分辨率 | 设置系统引导项,让 Windows 在引导阶段就选用固件支持的最高显示模式 |
| 重启打印服务 | 打印异常时重启本机打印服务 |
| 清理快捷方式 | 清理桌面失效快捷方式 |
「最佳分辨率」与「启动最高分辨率」解决的是两类问题:前者用于运行期能改、只是没改到最高;后者专治分辨率下拉灰掉只剩一档、运行期根本改不了的情况,从引导源头把交给系统的分辨率提上来。
1,点击「启动最高分辨率」,先弹出确认框。
2,确认后执行,结果区回显命令输出,成功即提示「重启后生效」。
3,重启终端确认分辨率是否被提升。
4,需要撤销时,用系统自带的引导配置工具把该引导选项改回默认。
使用前提
该操作需要管理员权限。该按钮内置于客户端,已装终端需更新客户端后才会出现。工具箱界面随系统语言显示(中文系统显示中文,另支持繁体中文、英、日、韩、俄、西、越等);若整个窗口只显示英文,是安装包缺少界面翻译文件所致,更新到新版客户端安装包即恢复。按钮的具体排布与名称以实机界面为准。
八、还能从哪里拿到线索
- 启动界面左下角的 ROM 版本号:常驻显示、开机即可见,取值与终端上报给管理台的完全同源,屏幕上看到的与控制台里显示的是同一串。批量升级启动镜像后,用它抽查是否全场生效最快。覆盖主菜单、下载、网络设置、缓存管理、U 盘写入、擦盘、快键帮助、选择计算机等所有带底部提示栏的界面;极老的启动镜像可能不显示。
- 下载结果页与 F12 日志:一轮下载结束后界面会停留在终态结果卡片上(成功显示「下载完成」,失败显示具体失败原因),并提示可按 F12 查看日志,不会一闪而过。
- 「上次启动未完成」标记:开机菜单会在该系统的副标题上显示「上次启动未完成」及连续次数,并把自动启动倒计时至少延长到 30 秒,给现场留出换系统、清空写入数据的处理窗口。相关开关在 桌面 → 桌面管理(Desktop Management)→ 分发桌面(Distribute Desktop)→ 开机选单设置(Boot Menu Settings),见 使用开机选单。
- 怀疑是写入数据损坏导致反复起不来:按 如何清空数据 清空该系统的写入数据后再试。
- 想看终端上送到服务器的日志:该能力受引导服务的调试开关控制,默认关闭,需打开并重启服务后才收集;且开关打开之前发生的终端日志不会被补收,故障第一现场若在开关打开前,只能到终端本机取。详见《服务器排障》一页。
- 缓存到底下全了没有:见 如何识别本地缓存下载情况。
九、生效前提(所有启动相关改动通用)
必须成套下发
启动侧的改动分布在多个产物上:启动菜单的 UEFI / BIOS 两套引导产物、引导服务、管理服务与控制台前端、客户端、启动镜像。只更新其中一项,多数改动不会生效——现象照旧,容易被误判成「修了没用」。排障前先确认这几样是不是同一批版本。
另外,「连续启动失败自动清空写入数据」默认关闭;客户端未更新到位前切勿开启,旧客户端不做启动成功确认,正常开机会被计为失败。