Linux Mint使用xdg-open启动nemo出现Gtk系列报错如何修复
三类报错均为Linux Mint环境下Nemo文件管理器的常见问题,按对应方案处理即可:
1. GDBus 重复注册客户端警告
对应报错:
(nemo:85552): Gtk-WARNING **: 09:21:45.991: Failed to register client: GDBus.Error:org.gnome.SessionManager.AlreadyRegistered: Unable to register client
- 该警告不影响任何文件管理功能,触发原因是终端启动Nemo时,程序重复向会话管理器注册已存在的客户端实例。
- 消除方案:调用Nemo时追加
--no-desktop参数,例如执行nemo --no-desktop .打开当前目录即可;若要让xdg-open默认调用带该参数的Nemo,可以修改桌面配置里的Nemo启动项,追加对应启动参数。
2. Samba 共享目录缺失警告
对应报错:
Nemo-Share-Message: 09:21:46.385: Called "net usershare info" but it failed: 'net usershare' returned error 255: net usershare: cannot open usershare directory /var/lib/samba/usershares. Error No such file or directory Please ask your system administrator to enable user sharing.
- 该警告仅在需要使用Samba局域网文件共享功能时会影响共享操作,不使用Samba的话可以直接忽略,不影响本地文件使用。
- 修复方案:依次执行以下命令,创建缺失目录并配置正确权限:
执行完成后注销当前用户重新登录,警告即可消失。sudo mkdir -p /var/lib/samba/usershares sudo chown root:sambashare /var/lib/samba/usershares sudo chmod 1770 /var/lib/samba/usershares sudo usermod -aG sambashare $USER
3. GTK组件销毁临界错误
对应报错:
(nemo:85552): Gtk-CRITICAL **: 09:21:47.482: gtk_widget_destroy: assertion 'GTK_IS_WIDGET (widget)' failed
- 该报错是旧版本Nemo的已知UI逻辑bug,不会造成文件损坏或功能失效,触发原因是窗口关闭时程序重复销毁已经释放的UI组件。
- 修复方案:执行系统更新将Nemo升级到最新稳定版即可:
最后一条命令会杀掉所有后台运行的Nemo进程,重新打开后报错即可消除。sudo apt update sudo apt upgrade -y nemo nemo -q
额外优化
如果不想终端打印Nemo的运行输出,可以在调用命令后追加输出重定向,例如执行xdg-open . >/dev/null 2>&1,所有运行日志都会被丢弃,不会占用终端显示空间。
内容的提问来源于stack exchange,提问作者alan7ur1n9

