通过 Kubuntu 识别 Mint + KDE 中幻影屏幕锁的来源

通过 Kubuntu 识别 Mint + KDE 中幻影屏幕锁的来源

背景

我正在尝试在 Linux Mint 19(不再提供)上运行 KDE。我按照这个帖子将 Kubuntu KDE 桌面添加到 Mint:

  • 首先在连接到笔记本电脑的 USB 硬盘上全新安装 Mint 19 Mate。
  • 更新了 APT 仓库缓存。
  • sudo apt install kubuntu-desktop kde-plasma-desktop kscreen

这不是完整的 KDE 安装,主要是 Plasma DE 和一些标准 KDE 实用程序,如 Dolphin。Kubuntu 是 v18.04,Plasma 是 v5.12。

然后我卸载了 Mate DE(但不是卸载了所有与 Mate 相关的东西;我不知道 Mint 在 Mate 软件包中包含了什么,也不想留下重要的漏洞)。我还删除了冗余和不需要的应用程序,并添加了一些软件包,包括 Xscreensaver。

现在我遇到了一个幻影屏幕锁5 分钟不活动后会弹出并锁定屏幕。这是一个通用密码输入屏幕,与您手动锁定屏幕时出现的内容相同:

在此处输入图片描述

我在最后列出了详尽的诊断。我跟踪了数十个关于在 KDE、Kubuntu 和 Mint 中禁用屏幕锁定的 Google 搜索结果,从当前版本到旧版本,并排除了 Xscreensaver 或正常屏幕锁定设置和控件的任何问题。基本上,安装中没有任何与基于不活动的屏幕锁定相关的设置,也没有专用的、可识别的屏幕锁定软件。问题指向了这一点:

推测:

  • 我从 Kubuntu 加载的 KDE 组件并非 Kubuntu 中包含的 KDE 的全部内容。它可能缺少与此问题相关的某些内容(例如,包含屏幕锁定控件的系统设置元素)。

  • 我可能保留了一些与问题相关的 Mate 组件,或者删除了与 Mate 捆绑在一起的一些关键内容,而这些内容不会被加载的有限 KDE 内容所取代。我遵循的说明保留了两个 DE 的安装;删除 Mate 是我自己的决定。但 Mate 中的任何内容都不应在 KDE 下运行。

  • Mint 可能包含一些基本的屏幕锁定功能,这些功能通常被 KDE 条款取代或控制。锁定屏幕图形与 KDE 主题不一致,这表明它可能是 Mint 功能。如果 Kubuntu 组件不完整,Mint 组件可能会以某种默认模式运行。

问题

我如何识别使用该命令行从 Kubuntu 加载时可能缺少的系统设置模块(或其他关键组件),或者 Mint 中任何可能导致问题的屏幕锁定器?

更新

为了进行比较,我创建了一个全新安装的 Kubuntu。

  • KDE 锁屏使用相同的通用模板,但经过了定制(KDE 壁纸、KDE ​​图标而非用户图标、密码字段和解锁按钮为黑色而非白色)。这表明幻影屏幕锁是 Mint 的功能。

  • Kubuntu 系统设置包含一个专用Screen Locking模块,其中Desktop Behavior包含相关控件。我的安装中缺少该模块。可能是缺少代码模块或缺少系统设置 UI 的配置信息。



补充文件

(阅读其余部分并不重要;主要是为了预先回答“你想到这个了吗?”)

诊断

  • 我知道这不是 Xscreensaver;那里没有设置锁。如果我设置的时间足够短,可以在幻影屏幕锁激活之前进入屏幕保护程序模式,它就会正常工作(并且屏幕锁不会激活)。如果屏幕锁先触发,Xscreensaver 就不会运行。

    我从未使用过 Xscreensaver 来锁定屏幕,但测试过它只是为了看看屏幕会是什么样子。它不会锁定屏幕,所以这不是原因。Xscreensaver-demo 是用于设置选项的前端 UI。当我在终端中打开它时,无论是否设置了锁定,它都会在终端中生成一条错误消息:

    $ xscreensaver-demo

    (xscreensaver-demo:3766): libglade-WARNING **: 05:11:30.894: 无法加载对“gnome”的支持:libgnome.so: 无法打开共享对象文件:没有此文件或目录

    我甚至不确定这是否相关。

  • 我在 KDE 文件杂乱中找到了 Kscreensaver 插图(图标),但没有任何可执行文件,而且图标与上面屏幕上的任何内容都完全不同。万一真的有 KDE 屏幕保护程序隐藏在某个地方,我创建了一个配置文件来禁用它(这并没有改变任何东西)。 没有捆绑 KDE 屏幕保护程序的迹象在正常系统设置中。

  • 系统设置中没有屏幕锁定设置,而 Plasma 5 应该有。除此之外,KDE 屏幕锁定设置在系统设置中移动了位置(例如,Desktop Behavior | Activities; Desktop Behavior | Screen Locking; Power Management;Display and Monitor等)。我在网上搜索了所有关于它曾经出现过的位置的参考资料,还在系统设置中搜索了lockscreen和其他相关术语。 系统设置中没有屏幕锁定设置。

  • 我禁用了所有电源管理设置与屏幕或任何形式的暂停有关(包括电池电源设置,即使我使用墙上电源运行,也要不遗余力);没有影响。

  • 在某些版本中,有一个屏幕锁在桌面配置中设置(通过右键单击桌面)。有一个选项可以手动锁定屏幕,但没有设置,包括在Configure Desktop该菜单中。

  • 在某些版本中,“腰果”中存在屏幕锁定程序,其与右键菜单基本相同。腰果已被“汉堡包”取代,并且不包含任何屏幕锁定设置。

  • 有一个隐私菜单在不同版本中的不同位置包含屏幕锁定设置(不再按此方式组织)。在某些情况下,屏幕锁定设置与屏幕亮度设置(没有)。

  • Plasma 的各个版本都屏幕锁定器配置位置例如~/.kde/share/config/kscreensaverrc,您可以在其中添加一行Lock=false。我创建了该文件,因为它不存在,并添加了该行(无效果)。

  • 我搜索了根目录和主目录以查找与此相关的每个配置文件,以及包含“screenlocker”、“screensaver”等的文件名。 似乎没有安装专门的屏幕锁定程序除了 Xscreensaver 之外(但这并不排除屏幕锁定被埋在其他代码中,或以神秘的方式命名)。

  • 我发现 2010 年的一项参考资料似乎已弃用,但仍然存在。有一个文件/etc/default/acpi-support与休眠相关的内容。其中有一行LOCK_SCREEN=true可以注释掉(没有效果)。

  • 启动时不会自动加载任何内容与此相关的(程序或服务)。

  • 在所有配置更改之后,我登出用户会话并重新登录,或重新启动,根据更改,以确保更改处于活动状态。

答案1

长话短说,通过这种方法安装为 Kubuntu 选定的 DE 包会留下一些重要的漏洞,这是我在将其与 Kubuntu 安装进行比较后发现的。

然后我在包管理器中搜索了“screenlocker”。结果显示有一个未安装的包,看起来很有希望,结果发现是缺少为屏幕锁定器提供用户控制的模块: kde-config-screenlocker。这使我能够在 下的系统设置中设置或禁用屏幕锁定器Desktop Behavior

仍有一些缺失的部分(屏幕锁仍缺少 KDE 自定义和其他零碎部分就是明证)。最好安装软件包,而不是复制和粘贴缺失的文件,因为软件包管理器会处理依赖关系。

Ubuntu 有一个方便的 Web 服务,可以进行反向查找以识别文件来自哪个包:https://packages.ubuntu.com/。我根据名称包含“screenlocker”的文件进行搜索。它生成了文件名匹配列表及其父包。在包管理器中检查这些包后,我又一次幸运了。 kubuntu-settings-desktop结果发现它缺失了,并且它对迄今为止发现的所有其他缺失的功能负责。

如果您尝试使用相同的方法将 KDE 添加到 Mint,则可以在原始命令中将这两个包添加到安装列表中。否则,您可以随后从终端使用以下命令安装这两个包:

sudo apt install kde-config-screenlocker kubuntu-settings-desktop

相关内容