ubuntu Gdk-Message: Error flushing display: Protocol error

Wayland\] Gdk-Message: Error flushing display: Protocol error > 解决方法 1、临时解决:主要是软件对当前桌面显示系统不兼容,需要x11 GDK_BACKEND=x11 ./Hiddify-Linux-x64.AppImage 2、永久解决 sudo vi /etc/gdm3/custom.conf 将以下代码: #WaylandEnable=false 修改为: WaylandEnable=false 然后重启reboot ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/d12e1e4d603a47368cf9311b8a9a86d4.png) > 具体介绍: 要将应用程序从 Wayland 切换到 X11,你需要确保系统在 X11 会话下运行,并且应用程序使用 X11 后端。以下是详细的步骤: #### 1. 切换到 X11 会话 ##### 在 GNOME 桌面环境中: 1. **注销当前会话**。 2. 在登录界面,通常会有一个选项来选择会话类型。选择"GNOME on Xorg"或类似的选项。 3. 登录到 X11 会话。 ##### 在其他桌面环境中: * 不同的桌面环境可能有不同的方法来切换到 X11 会话。通常在登录界面会有一个选项来选择会话类型。 #### 2. 设置环境变量 确保应用程序使用 X11 后端,可以通过设置 `GDK_BACKEND` 环境变量: ```bash GDK_BACKEND=x11 your_application ``` #### 3. 检查系统配置 确保系统配置支持 X11 会话。你可以通过以下命令检查当前会话类型: ```bash echo $XDG_SESSION_TYPE ``` 如果输出是 `x11`,则表示当前会话是 X11 会话。 #### 4. 示例 假设你有一个名为 `my_app` 的应用程序,你可以通过以下命令运行它: ```bash GDK_BACKEND=x11 my_app ``` #### 5. 永久设置 X11 会话 如果你希望永久切换到 X11 会话,可以在系统配置中进行设置。以下是一些常见桌面环境的设置方法: ##### GNOME: 1. 打开终端并运行以下命令: ```bash gsettings set org.gnome.desktop.session session-name gnome-xorg ``` 2. 注销并重新登录。 ##### KDE Plasma: 1. 打开系统设置。 2. 导航到"启动和关机" -\> "桌面会话"。 3. 选择"X11"作为默认会话。 #### 总结 * 切换到 X11 会话。 * 确保应用程序使用 `GDK_BACKEND=x11` 环境变量。 * 检查系统配置以确保支持 X11 会话。 通过这些步骤,你应该能够将应用程序从 Wayland 切换到 X11,并避免 `Protocol error` 错误。

相关推荐
xuanzdhc19 分钟前
Linux 基础IO
linux·运维·服务器
愚润求学25 分钟前
【Linux】网络基础
linux·运维·网络
bantinghy1 小时前
Linux进程单例模式运行
linux·服务器·单例模式
小和尚同志2 小时前
29.4k!使用 1Panel 来管理你的服务器吧
linux·运维
帽儿山的枪手2 小时前
为什么Linux需要3种NAT地址转换?一探究竟
linux·网络协议·安全
shadon1789 天前
回答 如何通过inode client的SSLVPN登录之后,访问需要通过域名才能打开的服务
linux
小米里的大麦9 天前
014 Linux 2.6内核进程调度队列(了解)
linux·运维·驱动开发
程序员的世界你不懂9 天前
Appium+python自动化(三十)yaml配置数据隔离
运维·appium·自动化
算法练习生9 天前
Linux文件元信息完全指南:权限、链接与时间属性
linux·运维·服务器
忘了ʷºᵇₐ9 天前
Linux系统能ping通ip但无法ping通域名的解决方法
linux·服务器·tcp/ip