#ubuntu #rustdesk

```table-of-contents
```

这个问题产生的原因是 Ubuntu 24.04 默认使用了 **Wayland** 显示协议，而 Wayland 出于安全设计，严格限制了外部程序在用户未登录状态下（即 GDM 登录界面）获取屏幕控制权。

作为一名拥有技术背景的高级经理，你可能更倾向于直接通过修改系统底层配置来彻底解决此问题。最稳妥的方案是将 Ubuntu 的显示管理器回退到兼容性更好的 **X11 (Xorg)**。

---

### 解决方案：禁用 Wayland 强制开启 X11

通过以下步骤，你可以让 Ubuntu 无论在登录前还是登录后都使用 X11 协议，从而允许 RustDesk 在系统启动后立即接管控制权。

#### 1. 修改 GDM3 配置文件

打开终端，编辑 GNOME 显示管理器的配置文件：

Bash

```
sudo nano /etc/gdm3/custom.conf
```

#### 2. 取消注释 Wayland 禁用行

在文件中找到 `[daemon]` 部分，找到下面这一行： `#WaylandEnable=false`

将其前面的 **`#`** 删掉，使其生效：

Plaintext

```
[daemon]
# Uncoment the line below to force the login screen to use Xorg
WaylandEnable=false
```

#### 3. 保存并重启服务

按下 `Ctrl + O` 保存，`Enter` 确认，再按 `Ctrl + X` 退出。 最后，重启 GDM 服务（或者直接重启电脑）：

Bash

```
sudo systemctl restart gdm3
```

---

### 为什么这样做能解决问题？

- **登录前（Login Screen）**：禁用 Wayland 后，Ubuntu 的登录界面将强制使用 X11 加载。RustDesk 的后台服务（Service）能够识别 X11 窗口并与其交互。
    
- **登录后（Post-Login）**：虽然 Wayland 在 24.04 上是趋势，但对于需要频繁远程桌面运维（Remote Service Delivery）的场景，X11 的稳定性与权限开放度目前仍优于 Wayland。