代码改变世界

Gnome Bug:无法点击、永不消逝的授权对话框

2021-01-02 00:22  愤怒的青蛙  阅读(380)  评论(0编辑  收藏  举报

欢迎大家范文我的Github博客阅读原文:https://whuhenry.github.io/posts/f53b6976/

在Ubuntu20.04上安装xRDP服务后,使用Windows远程桌面或者使用Linux下远程桌面登陆后,有时会在桌面左上角出现一个授权许可对话框,但是无论是输入密码后授权还是直接点击取消,该对话框均不会消失,而且无法使用鼠标移动,但是又不影响点击对话框后的内容,却又十分影响使用,经过搜索后发现这个应该是Gnome的bug,而且是尚未修复,但是能够通过一些方法使该对话框消失,不再影响使用。

1. 问题描述

最近因为需要使用GPU算力进行网络训练,因此使用使用xRDP远程桌面服务连接机房的深度学习工作站(操作系统为Ubuntu20.04,已经安装了xRDP服务),但是在初次登录后会在屏幕左上角出现一个授权对话框,内容是 Authentication is required to create a color managed device, 但是无论是输入密码后授权还是直接点击取消,该对话框均不会消失,而且该对话框无法使用鼠标移动,却又可以点击对话框后的内容,例如可以点击左上角显示所有程序。该Bug极其影响使用,而且只要不登出该用户,只是简单的断开远程桌面,该对话框永久不会消失,在任意其他电脑远程使用相同用户进行远程桌面连接后均能看到该对话框。

2.解决过程

开始我直接搜索该提示的内容,希望该提示不再弹出,结果是绝大多数人都提到可以通过修改polkit-1的配置文件来使得该对话框不再弹出,具体的,例如在这个turbovnc的github issue下,开发者提到,可以通过在这个 /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf 文件下添加添加如下内容,然后重新登录,即可使该对话框不再弹出,但是我经过尝试,该方法对我的电脑没有效果

polkit.addRule(function(action, subject) {
   if ((action.id == "org.freedesktop.color-manager.create-device" ||
        action.id == "org.freedesktop.color-manager.create-profile" ||
        action.id == "org.freedesktop.color-manager.delete-device" ||
        action.id == "org.freedesktop.color-manager.delete-profile" ||
        action.id == "org.freedesktop.color-manager.modify-device" ||
        action.id == "org.freedesktop.color-manager.modify-profile") &&
       subject.isInGroup("{group}")) {
      return polkit.Result.YES;
   }
});

这条路显然不通,于是我换了一个思路直接搜索远程桌面出现无法点击的授权对话框如何处理,发现还真有人提到类似的问题,在这条Ubuntu的Gnome Shell的bug反馈中,有人就提到了类似的Bug,等级的High,并且有65人反馈遇到了类似的Bug,并且至今尚未修复。按照下面讨论提供的方法,最终解决了问题。

3.解决方法

目前该Bug尚未修复,所以解决方法只是临时性质的,不保证能永久生效

  • 解决方法1:直接 kill 掉 gnome-shell进程,这时对话框自动消失,整个桌面会自动重启,而且经过目前1天的测试,并没有再弹出
  • 解决方法2:起始该解决方法与1类似,只是使用可以使用Gnome快捷方式直接重启Gnome-shell,具体方法是按住+组合键,在弹出的对话框输入r,按回车,就能自动重启Gnome-shell了。