如何唤醒计算机(网络唤醒 / WOL)
管理台上的「唤醒(开机)」发的是标准的网络唤醒包(Wake-on-LAN,简称 WOL)。这个功能能不能成,取决于三方面:主板设置、终端网卡状态、唤醒包能不能送到目标机所在的网段。本页把这三件事一次说清。
一、在哪里点
| 入口 | 位置 |
|---|---|
| 按计算机 | 计算机列表勾选若干台 → 电源与远程 → 开机唤醒 |
| 按分组 | 在分组上直接点唤醒 |
| 计划任务 | 计划任务里配定时开机(→ 计划任务管理) |
| 小程序 | 小程序云桌面列表 → 电源 → 唤醒(→ 如何用小程序管云桌面) |
| AI 助手 | 直接说「把三号机房都开起来」,属于高危动作,会先出待确认卡片(→ 如何使用 AI 助手) |
分组唤醒与计算机列表唤醒行为完全一致,不必担心两个入口口径不同。
二、唤醒包是怎么送出去的:两路同时发
从服务器广播出去的唤醒包,在服务器与终端不在同一网段、路由器又不放行定向广播时是到不了目标机的。所以现在默认两路同时进行:
1,服务器本地照常发一份唤醒包。
2,同时找一台在线终端就地代发:优先挑同分组的,其次挑与目标机同网段的,再按最近活跃排序。让它在目标机所在的局域网内把同一批唤醒包再发一遍。
任一路发出即算调度成功。
几个要点
- 分组配了专属服务器,也照样会找在线终端代发。
- 找不到合适的在线终端时,退回「只靠服务器本地发包」,行为与以前一样。
- 同网段的目标机可能收到两份唤醒包——唤醒包天然幂等,收几份都一样,没有副作用。
- 代发用的是终端早就支持的既有命令,终端不需要升级。
计划任务里的定时唤醒走的是另一条路
计划任务中的唤醒仍由服务器直接广播,不带终端代发。跨网段的机房如果要靠计划任务定时开机,请确认路由器放行定向广播,或在该网段留一台常开的机器。
三、终端侧:无盘终端为什么「关机之后就叫不醒」
有一类现场现象很典型:同一台机器,只过 BIOS 时能唤醒;一旦进过无盘启动环境或 Linux 客机再关机,就再也叫不醒。
原因在终端自己身上:网卡的唤醒开关在 BIOS / 网络引导阶段由固件说了算,但 Linux 网卡驱动一旦接管这块网卡,唤醒开关就改由驱动的设置决定,而常见的几类网卡驱动默认是关。关机时内核会通知驱动做收尾,驱动按当前设置把唤醒能力写下去——设置是「关」,就等于在关机那一刻主动把唤醒功能关掉了。这个设置不写进网卡的固化存储、也不跨重启保留,只能每次开机重设一遍。
现在无盘启动环境开机会自动把网卡的唤醒方式设成「魔术包唤醒」:
1,开机菜单 / 管理界面(ROM)与 Linux 客机直启,两条启动路径都会执行。
2,只动真实物理网卡。回环口、隧道口等虚拟接口、没有 MAC 的接口一律跳过;网卡自己说不支持魔术包唤醒的也直接跳过。
3,严格「尽力而为」:任何一步失败只在启动日志里留一行,绝不影响开机。武装了哪块网卡、当前唤醒方式是什么,都会打进启动日志,现场可据此核对。
必须重新打启动包并下发才生效
这一条做在无盘启动包里,只更新终端程序无效(→ 网络启动更新镜像)。
覆盖不到的三种情况
| 情况 | 说明 |
|---|---|
| Windows 客机 | Windows 起来之后网卡归 Windows 自己的驱动管,关机时的唤醒能力由 Windows 决定。需要在系统里设:网卡属性中允许唤醒、关闭快速启动。 |
| BIOS / UEFI 没开 | 主板要打开网络唤醒 / PCI-E 唤醒、关闭深度节能;网卡要接线并协商上链路。这两条不满足,终端侧设置再对也唤不醒。 |
| 系统内有东西把它改回去 | 只在开机时武装一次,不在关机前复设。客机系统里若有网络管理组件或第三方网卡驱动在运行期间改回「关」,仍会失效。 |
ARM 平台的客机直启流程本轮尚未同步(ARM 的 ROM 路径已覆盖)。
四、唤不醒时按这个顺序查
1,先确认这台机器过 BIOS 时能不能唤醒。能 → 问题在终端侧或系统侧;不能 → 问题在主板 / 网卡 / 布线。
2,看服务端日志里有没有终端代发的记录。有 → 唤醒包已经在目标网段里发出去了,继续查目标机自身。
3,确认目标机关机前跑的是什么:Windows 客机 → 去系统里设;无盘环境 → 确认启动包是不是新版(看启动日志里有没有网卡武装记录)。
4,跨网段现场:让同网段留一台常开机器,或让路由器放行定向广播。