Ubuntu 26.04(GNOME + Wayland)重启键盘消失问题

解决办法

1. 切换系统输入法框架为 fcitx5

bash

im-config -n fcitx5

弹出窗口确认选择 fcitx5。

2. 创建 fcitx5 开机自启(重点!启动的是 fcitx5,不是 configtool)

bash

mkdir -p ~/.config/autostart nano ~/.config/autostart/fcitx5.desktop

粘贴下面全部内容:

ini

[Desktop Entry] Type=Application Name=Fcitx5 Input Method Exec=fcitx5 -dr X-GNOME-Autostart-enabled=true NoDisplay=true Comment=Fcitx5输入法后台服务

保存退出:Ctrl+O→回车 →Ctrl+X

参数说明:-d后台守护运行;-r重启已有 fcitx5 实例

3. 配置环境变量(Ubuntu26 Wayland 推荐写法)

编辑用户环境配置:

bash

nano ~/.pam_environment

写入:

plaintext

GTK_IM_MODULE DEFAULT=fcitx QT_IM_MODULE DEFAULT=fcitx XMODIFIERS DEFAULT=@im=fcitx SDL_IM_MODULE DEFAULT=fcitx

⚠️ Wayland GNOME 不要在~/.profileexport~/.pam_environment登录会话最早加载,兼容性更好。

4. 处理 IBus 冲突(很多人踩坑)

关闭 IBus 自动启动,避免抢占输入法:

bash

# 屏蔽ibus用户服务 systemctl --user mask ibus # 杀死当前ibus进程 pkill ibus

5. GNOME 托盘显示 fcitx 图标(可选,方便判断是否启动)

Ubuntu26 GNOME Wayland 默认不支持传统托盘,安装扩展:

bash

sudo apt install gnome-shell-extension-appindicator

然后重启 GNOME(注销重登),右上角出现小键盘图标代表 fcitx5 正常运行。

验证方法

注销账户重新登录(不要只开新终端 source!环境变量必须重启会话生效) 终端执行:

bash

# 查看fcitx5进程 pgrep fcitx5 # 测试服务连通性,正常会输出信息 fcitx5-remote -s

✅ 有输出 = 后台正常运行; ❌ 提示无法连接 D-Bus = fcitx5 没有启动。

解决每次弹窗问题

  • 普通窗口输入正常;
  • Super 键打开 GNOME 概览、搜索框、通知弹窗里,看不到候选词。 根本原因:Wayland 安全机制,客户端窗口不能渲染到 gnome-shell 顶层。 ✅ 唯一解决方案: 安装Kimpanel GNOME 扩展 + fcitx5-module-kimpanel

bash

sudo apt install fcitx5-module-kimpanel chrome-gnome-shell

然后网页安装扩展:https://extensions.gnome.org/extension/261/kimpanel/

① 环境变量(推荐写入~/.pam_environment,GNOME 会话最早加载)

plaintext

XMODIFIERS DEFAULT=@im=fcitx QT_IM_MODULE DEFAULT=fcitx QT_IM_MODULES DEFAULT=wayland;fcitx SDL_IM_MODULE DEFAULT=fcitx