# View and control the instance screen over VNC

VNC lets you view and control an instance's screen even when it will not boot or has no network path. Learn why Ctrl+Alt+Del reboots Linux instantly, and what the connection token covers.

VNC connects directly to the instance's virtual screen, bypassing the guest operating system's network stack entirely. Even when an instance has no public IPv4 address, SSH on port 22 is completely unreachable, or the system is frozen partway through boot and unresponsive, VNC usually still shows the screen. The dashboard describes it this way: "Use VNC to remotely view the instance's status if issues arise, enabling troubleshooting and diagnostics."

Opening the VNC entry point does not check whether the instance is running. As long as the instance runs on PVE and is not security-locked, the connect button is available. What actually determines whether you can use the keyboard and mouse is the instance's current power state — see [Read-only versus interactive mode](#read-only-versus-interactive-mode) below.

## Ctrl+Alt+Del reboots a Linux instance instantly — it does not open a login screen

The Ctrl+Alt+Del button on the VNC toolbar does two completely different things on Windows and Linux instances:

| What happens                                                                                                                                                                | What does not happen                                                                                                                                                                          |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| The button sends the raw key-down and key-up signals for Ctrl, Alt, and Delete to the guest operating system — the same as pressing that combination on a physical keyboard | Cypacky's backend is never called. The platform only forwards keystrokes; it does not know, and does not record, that this was a restart                                                      |
| On Linux, this combination is captured by default by systemd's `ctrl-alt-del.target`, equivalent to running `systemctl reboot` — it triggers a normal restart immediately   | No confirmation dialog appears first. The keystrokes are already sent the instant you select the icon                                                                                         |
| On Windows, the same key combination triggers the Secure Attention Sequence, opening a login, lock, or switch-user screen                                                   | The frontend behavior does not change based on whether the guest is Windows or Linux — the same keystrokes are sent either way; the difference comes entirely from how the guest handles them |
| The restart follows systemd's normal shutdown sequence, so data already saved to disk is unaffected                                                                         | Unsaved in-memory state at the moment of restart is not preserved — unsaved edits, uncommitted transactions, and in-progress transfers are interrupted and cannot be recovered                |

> [!CAUTION]
> The button's own tooltip already says this: "Linux: Click to restart system
> directly; Windows: Used to launch login screen." Selecting this icon has **no
> second confirmation step** — there is no "are you sure you want to restart"
> dialog. The keystrokes are sent the instant you click. Before selecting it,
> confirm which operating system you are connected to, and whether you actually
> want to restart this instance.

This button is disabled in read-only mode — see [Read-only versus interactive mode](#read-only-versus-interactive-mode) below.

_Interface illustration: VNC toolbar with the cursor hovering over the Ctrl+Alt+Del icon button, showing the tooltip text 'Linux: Click to restart system directly; Windows: Used to launch login screen'_

## Before you begin

- **The instance runs on PVE.** The VNC channel is provided by Proxmox VE and is only available for instances running on PVE. Otherwise the button stays disabled, with the tooltip: "This instance does not support VNC connection."
- **The instance is not security-locked.** This is also what gates the **Start Connection** button itself — as long as the instance is not locked, the button is available regardless of whether the instance is running. Once an instance is locked following an abuse report, requesting a connection fails with: "此实例因安全投诉已被锁定，无法使用 VNC。"
- **The instance is not awaiting payment activation.** This does not affect whether the button is clickable — it is only checked when a connection is actually requested. A request on an instance awaiting payment activation fails with: "此实例正在等待支付激活，当前无法使用 VNC。"
- **The instance's billing is in good standing.** Also checked only when a connection is requested, not when the button is drawn. A request on a delinquent instance fails with: "此实例当前处于欠费状态，当前无法使用 VNC。"

All three messages above are hardcoded in Simplified Chinese on the backend, with no localization layer behind them — they display the same regardless of the dashboard's interface language setting.

## Open the VNC console

1. On the instance detail page, select the **Connect** tab.
2. On the "VNC Connection" card, select **Start Connection**.
3. The console opens a new VNC view. The status bar first reads "Connecting to instance...", then changes to "Connected" once the connection succeeds.

_Interface illustration: The Connect tab on the instance detail page, showing the VNC Connection card with its description text and the Start Connection button_

## The connection token: one-time, 60 seconds

Every time you select **Start Connection**, the dashboard requests a brand-new connection credential from the backend: a one-time RFB password and a connection token valid for only 60 seconds. The moment the token is used to establish a connection, the server deletes it — the same token cannot be used to connect a second time.

This means a VNC connection URL that includes a token cannot be shared with anyone else. Whoever uses it first gets the connection, and the other person is locked out; if neither of you connects in time, the token simply expires and both attempts fail. Selecting **Reconnect** on the toolbar, or an automatic reconnect after a dropped connection, always requests a fresh token — there is no such thing as refreshing an old token to keep using it.

## Read-only versus interactive mode

Whether VNC shows a picture and whether it lets you use the keyboard and mouse are two separate things. Whether the session is interactive depends on the instance's current power state:

| Instance state                                                                     | Keyboard, mouse, and clipboard                                                          |
| ---------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| Running, in an error state, or stopping                                            | Interactive                                                                             |
| Any other state — for example stopped, pending configuration, or under maintenance | Read-only. The Ctrl+Alt+Del button and other action buttons on the toolbar are disabled |

In read-only mode, the toolbar icon tooltips change to: "This instance is view-only in its current state; keyboard, mouse, and clipboard input are disabled."

_Interface illustration: A read-only VNC session with the Ctrl+Alt+Del and other toolbar buttons shown disabled, cursor hovering to reveal the tooltip 'This instance is view-only in its current state; keyboard, mouse, and clipboard input are disabled'_

## When VNC will not open

VNC can fail to open for several distinct reasons. The dashboard shows the backend's message as-is; each case below is grouped by its trigger.

### The instance does not support VNC

> This instance does not support VNC connection.

The instance is not running on PVE, or another compatibility restriction applies. The connect button stays disabled.

### The instance is locked following a security complaint

> 此实例因安全投诉已被锁定，无法使用 VNC。

Contact Cypacky Support through a ticket to learn the reason and the conditions for unlocking it.

### The instance is awaiting payment activation

> 此实例正在等待支付激活，当前无法使用 VNC。

Complete the payment first. VNC becomes available once the instance is activated.

### The instance is delinquent

> 此实例当前处于欠费状态，当前无法使用 VNC。

VNC becomes available again once the outstanding balance is settled.

### The VNC service is temporarily unavailable

Requesting a connection credential involves several backend steps: resolving the instance's PVE node, asking PVE for a vncproxy, generating a one-time token, and writing the connection session. When the PVE proxy request itself fails, the backend returns:

> VNC 服务暂时不可用，请稍后再试

A failure at any of the other steps — resolving the node, generating the token, or writing the session — returns:

> VNC 连接信息获取失败，请稍后再试

Either way, wait a moment and retry. If it keeps happening, record the instance ID and the time, and contact Cypacky Support.

## Common problems during a session

- **Failed to fetch VNC password**: requesting a new token during a reconnect attempt failed. Check your network and retry; switching browser tabs or losing window focus pauses automatic reconnection, so switch back and select **Reconnect** manually.
- **Cannot paste: Not connected to instance**: the clipboard paste dialog was opened before VNC finished connecting. Wait for the status to read "Connected" before pasting.
- **Please enter content to send**: the send action was triggered with an empty paste field.
- **Fullscreen failed** / **Failed to exit fullscreen**: the browser refused the fullscreen request, typically in a tab with restricted permissions. Reload the page and try again, or use the browser's own fullscreen control instead.

## Related documentation

- [Instance details](/compute/instances/detail/)
- [Instance connections](/compute/instances/detail/connect/)
- [Start, stop, and restart an instance](/compute/instances/management/power/)
- [Use Web SSH](/compute/access/web-ssh/)
