功能使用手册

适用对象:一线教师、机房管理员、IT 运维人员 · 覆盖云课堂全部功能操作

云课堂的全部功能围绕"老师一键上课、终端自动连接、下课自动回收"这条主线展开。本文档按使用角色分类,方便不同岗位的人快速找到自己需要的部分。

教师端程序结构 教师端分两层:后端服务(负责终端注册、心跳、PVE 控制)和前端界面(老师看的窗口)。两个程序会自动协同启动,老师不需要手动管理。

开始上课 / 结束下课

教师端主导的上课架构

整个上课流程由教师端集中管控:克隆 VM、写入 MAC 地址、分配 SPICE 端口、启动 VM 全部由教师端通过 PVE API 统一完成。终端只负责一件事——收到指令后连接桌面。

操作教师端负责终端负责
链接克隆 VM✅ 调用 PVE API—
写入 MAC 地址(永久绑定)✅ 写入 VM 配置—
分配 SPICE 端口✅ 写入 VM 配置—
启动 VM✅ 调用 PVE API—
推送连接指令✅ 下发 SPICE 连接信息📩 接收指令
连接桌面—✅ remote-viewer
MAC 地址表管理✅ 创建并永久保存—
心跳上报📩 接收状态✅ 定时上报

开始上课

  1. 打开教师端,确认终端列表中所有终端状态为"在线"
  2. 点击「开始上课」按钮
  3. 在弹出的课程列表中选择课程模板(如"Python 教学环境")
  4. 系统自动执行:
    • 链式克隆:基于模板批量创建 VM。所有 VM 共享同一份基础镜像,只记录差异数据,60 台同时启动也很快
    • MAC 绑定:每台 VM 分配固定 MAC 地址(永久保存,后续上课复用)
    • SPICE 端口分配:每台 VM 分配独立端口,终端通过 SPICE 协议连接桌面
    • 批量启动:分批启动 VM,就绪一台推送一台的连接指令
  5. 约 3 分钟后(60 台规模),所有终端进入 Windows 桌面
上课前不需要 IT 介入 老师不需要提前找网管装环境。点一下"上课",系统按模板自动准备。课前检查只需要看教师端界面终端状态是否都"在线"。

结束下课(两种模式)

对比下课 — 关闭终端下课 — 关闭全部
广播下课指令✅✅
停止链接克隆 VM✅✅
删除链接克隆 VM(释放磁盘)✅✅
模板 VM保留不动停止但保留
关闭终端物理机✅✅
关闭 PVE 服务器—✅(含二次确认)

模式一:关闭终端 — 日常下课用。广播下课指令 → 终端断开桌面 → 批量停止并删除 VM → 关闭终端物理机。约 10 秒完成。

模式二:关闭全部 — 机房彻底收工时用。在模式一基础上,额外等待终端全部关机后,关闭 PVE 服务器。操作前会二次确认。

下课后,学生课上装的软件、改的设置、下的文件全部自动清除。下一节课再点"上课",还是干干净净的新系统。

自由选课(多课程模板切换)

自由选课让同一间教室可以切换不同课程环境,不用重装系统。它支持两种模式,适应不同的教学场景。

模式一:集中上课 + 自由选课开关

老师统一上课后,打开「学生自由选课」开关。已经完成课堂任务的学生,可以在终端上自由切换到其他课程继续学习。

  1. 老师正常点击「开始上课」,全班进入统一课堂
  2. 在教师端打开「学生自由选课」开关
  3. 学生终端上的课程列表解锁,可以点击其他课程卡片
  4. 学生切换到其他课程模板,启动对应的 VM 桌面

模式二:纯自由选课

老师不统一上课,只点击「唤醒终端」。学生各自在终端上选择自己想上的课程,不同学生可以同时上不同的课。

  1. 老师点击「唤醒终端」
  2. 所有终端显示课程卡片列表
  3. 学生各自点击想上的课程
  4. 终端自动连接对应模板的 VM 桌面
开关默认关闭 自由选课开关默认关闭,终端课程列表显示锁图标,学生无法点击。这是为了防止学生在上课期间误操作切换到其他课程。

典型课程切换场景

时间课程模板
上午 1-2 节Python 编程编程模板(VSCode + Python)
上午 3-4 节平面设计设计模板(Photoshop + Illustrator)
下午办公应用办公模板(Office + WPS)
晚上考试考试模板(干净系统,指定软件)

SPICE 桌面体验与恢复

学生终端通过 SPICE 协议连接 VM 桌面,体验接近本地电脑。系统内置了完善的断开恢复机制,上课中途出问题不需要等网管。

正常的桌面连接流程

  1. 教师端完成 VM 克隆和启动后,向终端推送上课指令
  2. 终端收到指令,自动启动远程桌面客户端
  3. 学生屏幕上看到 Windows 完整启动过程
  4. 进入桌面后,USB 外设(U 盘、键盘、鼠标)插上就能用

桌面断开后的自动恢复

如果网络波动导致桌面断开,系统会自动尝试重新连接。状态栏会显示恢复进度。如果自动恢复失败,终端会显示恢复按钮。

热键手动恢复(Ctrl+Shift+F12)

如果 VM 卡死或桌面无响应,学生可以按 Ctrl+Shift+F12 热键。终端会弹出两个按钮:

按钮作用适用场景
重新连接本地快速重连当前 VM网络波动、短暂断线
重新上课(数据全部丢失)通知教师端删除旧 VM,重新克隆一台新 VMVM 蓝屏/卡死/无法恢复
两种恢复路径,各管各的 自然断开走自动恢复(省人工);VM 卡死走热键手动恢复(确保可靠)。热键由系统底层快捷键实现,全屏桌面也挡不住。
某台终端死机或桌面断了——学生按一下 Ctrl+Shift+F12,选"重新连接",30 秒回到课堂桌面。前后不到一分钟,课照上,不影响其他学生。

注册与编号

终端上电后会自动发现教师端,不需要手动配 IP。整个注册过程,老师只需要在终端上输入一个数字编号。

端到端注册流程

  1. 终端上电:自动搜索局域网内的教师端(三层策略:优先缓存直连 → 网络邻居表 → UDP 组播探测)
  2. 教师端弹窗:检测到新终端,弹出提示"发现新终端",显示 MAC 地址
  3. 输入编号:老师在终端屏幕上输入一个数字(1 到 60)
  4. 自动分配:教师端自动计算并下发 IP 地址、网关、DNS 等全部网络配置
  5. 注册完成:终端将配置写入本地持久化存储,重启也不丢失
学生只输入一个数字 不需要输入 IP 地址、子网掩码、网关、DNS、服务器地址。任何网络配置都不需要。这就是"零配置部署"的含义。

编号规则

替换接入

终端硬件坏了,换一台新的上去——编号和桌面绑定自动继承,不需要重新登记,不需要重新配置。

操作步骤

  1. 把坏终端拔网线、断电
  2. 新终端接上网线、上电
  3. 新终端开机后自动找到教师端
  4. 教师端弹出提示:"发现新终端,是否替换?"
  5. 在教师端选择要替换的终端编号(如 T15)
  6. 点「确认替换」
  7. 新终端自动获得原编号、原 IP、原 VM 绑定——全部继承
背后的逻辑 替换操作做了三件事:①解除旧 MAC 与该编号的绑定;②新 MAC 绑定到该编号;③ PVE 上的 VM 绑定迁移到新终端。这一切在点"确认"后自动完成,管理员不需要手动改任何配置。

重新排号

需要批量调换终端的座位编号时(比如考场重新编排),用重新排号功能。系统采用两阶段确认制,保证数据安全。

两阶段确认制

阶段做什么谁操作
阶段一:收集意向学生在终端上输入新编号 → 终端暂存意向 → 上报教师端学生
阶段二:确认执行教师端汇总所有意向 → 管理员点「执行排号」→ 终端收到确认后才真正修改配置并重启管理员

操作步骤

  1. 教师端点「重新排号」,进入排号模式
  2. 每台终端弹出编号输入框(预填当前编号),学生输入新编号
  3. 教师端实时显示所有终端的编号变更意向
  4. 管理员检查无误后,点「执行排号」
  5. 每台终端收到确认指令:写入新配置 → 上报完成 → 自动重启(3 秒后)
  6. 重启后所有终端以新编号上线
取消排号 执行前如果发现问题,点「取消排号」即可。所有终端丢弃暂存的新编号,继续用旧配置运行。不会产生任何残留。
安全保护 如果某台终端在执行阶段断线(比如意外断电),重启后会继续执行暂存的编号变更——因为它不依赖网络,本地已有完整的配置数据。教师端也会给每台终端预留 180 秒的超时窗口,足够它重启回连。

终端详情页(五维度状态)

终端详情页是机房管理员排查问题时最常用的页面。它把每台终端的状态拆成5 个独立维度,避免"有状态但不知道是什么状态"的混淆。

五个独立维度

维度含义数据来源
终端在线终端本机是否上电并连上教师端终端心跳(30 秒周期)
VM 运行PVE 上的虚拟机是否在运行PVE API 状态查询
SPICE 接入终端是否已连接到 VM 桌面PVE SPICE 连接检测
Guest 活跃VM 内部 Guest 程序是否正常Guest 心跳(5 秒周期,60 秒过期)
VM 存在PVE 上是否存在此 VM 配置PVE 配置查询
五维度独立原则 这五个状态是各自独立的。终端在线 ≠ VM 运行 ≠ SPICE 接入 ≠ Guest 活跃 ≠ VM 存在。显示时只取对应维度的字段,不能混着显示。每个维度有自己的数据来源和过期时间。

常见状态组合解读

终端在线VM 运行SPICE 接入含义动作
✅✅✅完全正常无需处理
✅✅❌VM 启动了但桌面还没连上等几秒,系统会自动重连
✅❌❌终端在线但没点上课正常待机状态
❌✅❌终端掉线但 VM 还在运行检查终端网络或重启终端
❌❌❌终端离线且无 VM检查终端硬件和网络连接
✅✅✅Guest ❌VM 桌面在运行但内部代理未启动,不影响使用

详情页的批量操作

教师端初始化配置

教师端首次启动时,会引导完成初始化配置。之后也可以随时通过右上角设置按钮修改(需要密码验证)。

配置项一览

配置项说明
云服务器 IPPVE 服务器地址
用户名 / 密码PVE API 认证凭据
终端起始 IP学生终端 IP 地址池起始值
VM 起始 IP虚拟机 IP 地址池起始值
终端数量最大支持的终端数(默认 60)
起始编号终端编号从几开始(默认 1)
子网掩码 / 网关 / DNS终端侧网络参数
计算机名前缀终端 hostname 格式,如 "T" → T01, T02…
设置密码保护设置页面的密码
保存即生效 设置保存后,教师端无需重启。PVE 连接变更会自动刷新,终端相关的变更会在下次终端连接时自动同步。

终端设置

每台学生终端也有自己的设置界面(右下角"设置"按钮,需要密码验证)。

终端设置功能

设置项说明
PVE 配置PVE 服务器地址、用户名、密码
教师机地址手动指定教师机 IP(正常情况会自动发现)
显示分辨率自动 / 1024×768 / 1920×1080,终端启动时生效
网络设置本机 IP / 掩码 / 网关 / DNS(修改后需重启生效)
Ping 测试在设置面板内对任意地址发送 4 个探测包
修改密码保护终端设置页面的密码

教师发现机制

终端启动后会按以下顺序寻找教师端:

  1. 先尝试缓存的上次教师机地址(最快,零网络流量)
  2. 再扫描网络邻居表(被动扫描,不产生流量)
  3. 最后发组播探测(主动搜索,有限流控)

都失败后,终端会进入单机模式,学生仍可以自由选课(直接连 PVE)。教师机恢复上线后会自动退出单机模式。

Guest 程序

Guest 程序运行在VM 虚拟机内部(学生看到的桌面环境里),是一个轻量级常驻工具。它和终端程序是两个不同的东西:

核心功能

功能说明
心跳保活每 5 秒向教师端发送心跳,报告 VM 在线状态
自动绑定VM 启动后读本机 MAC,对照本地 MAC 表自动查出终端编号、计算 IP 地址
锁屏/解锁教师端下发锁屏指令,学生桌面弹出全屏遮罩,鼠标键盘被禁用
举手学生点举手按钮,教师端收到提示并可应答/拒绝
开机自启VM 启动后 Guest 程序自动运行,不需要登录

三阶段工作模型

Guest 程序遵循"模板机初始化 → 克隆 → VM 落位"三阶段模型:

  1. 阶段一(模板机):在制作母盘模板时运行初始化,从教师端拉取完整 MAC 地址表并保存到本地
  2. 阶段二(克隆):教师端"上课"时,PVE 以模板为源链接克隆 N 台 VM,每台分配不同的 MAC
  3. 阶段三(VM 落位):每台 VM 开机后,Guest 程序读本机 MAC → 查本地 MAC 表 → 得终端编号 → 算 IP → 自动配置网络 → 开始心跳
为什么这样设计 60 台 VM 同时克隆启动时,如果每台都去问教师端"我的 IP 是什么",教师端瞬间被 60 路请求冲击。三阶段模型让每台 VM 用模板机阶段预存的本地 MAC 表自查绑定,不依赖教师端实时下发。

终端程序升级

终端程序的新版本可以通过教师端统一推送升级,不需要逐台操作。

操作步骤

  1. 教师端打开详情页,勾选需要升级的终端
  2. 点击「升级终端」,选择新版本文件
  3. 确认升级,教师端将新版本推送给选中的终端
  4. 每台终端收到升级通知后自动:
    • 下载新版本程序
    • 停止当前服务
    • 备份旧版本(保留最近 3 个版本)
    • 替换为新版本
    • 重启服务
  5. 教师端详情页实时显示每台终端的升级进度和结果
升级注意事项 升级过程中终端会短暂离线(约 10-30 秒)。建议在非上课时间执行。升级失败会自动回退到旧版本。

模板更新

课程模板的更新是在 PVE 上操作的,不在教师端界面上。流程如下:

  1. 在 PVE 界面,基于现有模板克隆一个新 VM
  2. 开机,安装课程需要的软件、更新系统
  3. 关机,转为模板
  4. 在教师端设置中,将新模板编号加入课程列表
  5. 下次上课或自由选课时,新模板就会出现在列表中

详细操作参考 日常运维 → 模板更新与推送。

预约演示
🤖
智能客服
服务极客 · 随时响应
您好!我是服务极客的智能客服 👋 有什么关于云桌面系统的问题,欢迎随时咨询——上课使用、部署安装、故障排查,都可以问我。
刚刚
您也可以通过以下方式联系我们: