VNC 直接连接实例的虚拟屏幕,不经过操作系统的网络栈。即使实例没有配置公网 IPv4、22 端口的 SSH 完全连不上,或者系统卡在启动过程中毫无响应,VNC 通常仍然能显示屏幕内容。控制台自己的说明是:"VNC 连接可用于在实例出现异常时远程查看实例的状态,以便进行故障排查和问题诊断。"
打开 VNC 入口本身不检查实例是否在运行——只要实例由 PVE 承载、没有被安全锁定,连接按钮就可用。真正决定你能不能用键盘鼠标操作屏幕的,是实例当下的电源状态,见下文的只读模式部分。
工具栏上的 Ctrl+Alt+Del 按钮,在 Windows 和 Linux 实例上做的是完全不同的两件事:
| 会发生什么 | 不会发生什么 |
|---|---|
| 按钮把 Ctrl、Alt、Delete 三个键的原始按下与释放信号发给客户机操作系统,效果等同于在物理键盘上按下这个组合键 | 不会调用任何 Cypacky 后端 API——平台只是转发按键,不知道、也不记录这是一次重启 |
在 Linux 上,这个组合键默认由 systemd 的 ctrl-alt-del.target 接住,等同于执行 systemctl reboot,立即触发一次正常重启 |
不会先弹出确认对话框——点击图标的瞬间,按键就已经发出 |
| 在 Windows 上,同样的按键组合触发的是安全登录序列,弹出登录、锁定或切换用户的界面 | 不会因为客户机是 Windows 还是 Linux 而改变前端行为——发出的是同一段按键,差异完全来自客户机系统自己的处理方式 |
| 重启走的是 systemd 的正常关机流程,磁盘上已保存的数据不受影响 | 不会保留重启瞬间尚未保存的内存态数据——未保存的编辑内容、未提交的事务、正在进行的传输都会被中断,且无法找回 |
只读模式下这个按钮会被禁用,见下文的只读模式部分。
- 实例由 PVE 承载:VNC 通道由 Proxmox VE 提供,只对由 PVE 承载的实例开放。不满足时按钮呈禁用状态,界面提示:"此实例不支持 VNC 连接。"
- 实例未被安全锁定:这一条同时决定启动连接按钮是否可点击——只要实例未被锁定,无论实例是否在运行,按钮都是可用的。一旦实例因安全投诉被锁定,申请连接会失败,返回:"此实例因安全投诉已被锁定,无法使用 VNC。"
- 实例未在等待支付激活:这一条不影响按钮是否可点击,只在实际申请连接时才校验。等待支付激活的实例申请连接会失败,返回:"此实例正在等待支付激活,当前无法使用 VNC。"
- 实例账单状态正常:同样只在申请连接时校验,不影响按钮外观。欠费的实例申请连接会失败,返回:"此实例当前处于欠费状态,当前无法使用 VNC。"
以上三条提示都是后端硬编码的简体中文,不经过任何多语言字典,无论控制台界面语言设置为简体、繁体还是英文,看到的都是这段简体文字。
- 在实例详情页,选择连接标签页。
- 在"VNC 连接"卡片中,选择启动连接。
- 控制台打开新的 VNC 视图。状态栏先显示"正在连接到实例...",连接成功后变为"已连接"。
每次选择启动连接,控制台都会向后端申请一份全新的连接凭证:一个一次性 RFB 密码和一个只在 60 秒内有效的连接令牌。令牌一旦被用来建立连接,服务端会立即删除它,同一个令牌无法用来连接第二次。
这意味着带令牌参数的 VNC 连接地址不能分享给别人。对方要么抢在你之前把令牌用掉,导致你自己连不上;要么两人都还没连接令牌就已经过期,双方都会连接失败。工具栏的重连按钮和断线后的自动重连,都会重新申请一份新令牌,而不是把旧令牌刷新后继续用。
VNC 是否显示画面,和是否允许你用键盘鼠标操作,是两件独立的事。是否可交互取决于实例当下的电源状态:
| 实例状态 | 键盘、鼠标和剪贴板 |
|---|---|
| 正在运行、故障、正在停止 | 可交互 |
| 其他状态,例如已停止、待配置、维护中 | 只读,工具栏的 Ctrl+Alt+Del 等操作按钮被禁用 |
只读状态下,工具栏图标的悬浮提示会替换成:"当前实例状态仅允许查看,键盘、鼠标和剪贴板输入已禁用。"
VNC 打不开有几种不同的原因,控制台会原样显示后端返回的提示文字,下面按触发场景分类说明。
此实例不支持 VNC 连接。
实例不是由 PVE 承载,或者存在其他兼容性限制。连接按钮会保持禁用状态。
此实例因安全投诉已被锁定,无法使用 VNC。
通过工单联系 Cypacky Support 了解原因和解锁条件。
此实例正在等待支付激活,当前无法使用 VNC。
先完成支付,实例激活后再重试。
此实例当前处于欠费状态,当前无法使用 VNC。
结清欠费后即可重试。
申请连接凭证的过程涉及多个后端步骤:解析实例所在节点、向 PVE 申请 vncproxy、生成一次性令牌、写入连接会话。其中向 PVE 申请代理这一步失败时,返回:
VNC 服务暂时不可用,请稍后再试
其余步骤(解析节点信息、生成令牌、写入会话)失败时,返回:
VNC 连接信息获取失败,请稍后再试
两种情况都值得稍等片刻重试;如果反复出现,记录实例 ID 和时间,联系 Cypacky Support。
- 获取VNC密码失败:重新连接时向后端请求新令牌失败。检查网络后重试;切换浏览器标签页或窗口失去焦点会暂停自动重连,切回页面后手动选择重连。
- 无法粘贴:未连接到实例:VNC 尚未建立连接就打开了剪贴板粘贴框。等待状态变为"已连接"后再粘贴。
- 请输入要发送的内容:粘贴框内容为空时选择了发送。
- 全屏失败 / 退出全屏失败:浏览器拒绝了全屏请求,通常发生在权限受限的浏览器标签页中。刷新页面后重试,或改用浏览器自带的全屏方式。