我一生都在尝试寻找一种方法,从系统托盘(即左上角下拉菜单下)移除系统范围内的锁定“图标”...我尝试了所有可能的办法:阻止它执行任何操作,找到一种方法来重新映射它实际执行的操作(即更改它运行的命令 - 这将是最佳解决方案)。也可以简单地将其从 UI 中删除
我尝试了从 dconf 设置到编辑文件的所有找到的各种方法polkit-1/actions/org.freedesktop.login1.policy
。
我的目标是阻止用户通过该方法锁定桌面...原因是单击它时会搞砸 x11vnc(当远程登录时)。我有一个 i3lock 实现,我想将其设置为锁定桌面的“默认”方式,因为它与上述 x11vnc 配合得很好。
有没有办法完全删除它,或者改变它的行为以运行我的 i3lock-colour 脚本?
我确信我错过了一个简单的解决方案,但是我觉得我已经尝试了一切。
编辑:
附加:我注意到一件“奇怪”的事情,如果我手动运行命令gnome-screensaver-command -l
立即锁定,我可以通过远程 x11vnc 高兴地看到锁定屏幕并解锁机器。同样,如果 vnc 会话保持打开状态但长时间没有用户输入,我可以看到相同的锁定屏幕(如果 vnc 会话关闭并离开,也会出现相同的情况)。为什么按下 GUI 锁定按钮时会执行不同的操作?我被引导相信通过 gui 按钮锁定会打开一个新的 X 显示,因此为什么绑定到 :0 的 x11vnc 会变为空白。同样,是什么命令导致了这种情况,可以更改吗?
编辑2:
以防有人想知道……机器必须使用 18.04,因为其他驱动程序/软件只适用于此版本,而迁移到 20.04(下一个合格版本)将需要对超出此范围的其他系统进行重大更新,这是一项非常复杂的工作。这对我来说有点令人沮丧,因为我见过许多完美的 gnome 扩展,但与 gnome 3.28 不兼容。
答案1
我有过类似的经历问题,但改用 GNOME42。经过一番折腾,我终于找到了解决办法。您可以从终端使用此命令将其删除
gsettings set org.gnome.desktop.lockdown disable-lock-screen true
并使用此命令重新启用它
gsettings reset org.gnome.desktop.lockdown disable-lock-screen
或者,你也可以使用 GNOME 商店中的 dconf 编辑器导航到/org/gnome/桌面/锁定并改变禁用锁屏切换以获得相同的结果。
尽管 GNOME42 使用的是文本而不是图标,但我很确定这对您也适用,因为它会改变 dconf/gsettings 本身。
但需要提醒的是,不要在不理解 dconf 编辑器的情况下随意摆弄它的选项,因为它可能会破坏您的系统。