使用原始 GNOME 时无法再在 Ubuntu 20.04 上锁定屏幕,如何调试?

使用原始 GNOME 时无法再在 Ubuntu 20.04 上锁定屏幕,如何调试?

背景:我使用的vanilla-gnome-desktop是从头安装的 Ubuntu 20.04。用户配置文件不是从头安装的。它是从另一台机器移植过来的。

现在由于某种原因,我无法再锁定我的屏幕,即在保持登录状态时显示锁定屏幕。

基本上 shell 似乎崩溃了。症状是屏幕不会被锁定,我会返回到我的桌面。一些窗口和桌面背景会短暂闪烁,但随后一切都会返回到解锁的桌面。

有时我会看到 Ubuntu 的实际崩溃对话框,指的是SIGSIGV中的_st_theme_node_ensure_background()

版本gnome-shell3.36.2-1ubuntu1~20.04.1

我猜想某些个人资料设置可能出现问题。我该如何:

  1. 进一步调试此问题
  2. 重置相关设置(最好不要进行其他操作)

...为了能够再次锁定我的屏幕?

答案1

我不确定这是否会对任何人有帮助,或者其他人是否会遇到同样的问题 —— 我得出的结论是,也许从 18.04 升级到 20.04 是导致这一切的原因 —— 但这是我设法解决它的方法。

有许多迹象表明syslog这是一个扩展问题:

gnome-shell[31361]: Usage of object.actor is deprecated for dtpSecondaryAggregateMenu#012get@resource:///org/gnome/shell/ui/environment.js:287:29#012_init@/usr/share/gnome-shell/extensions/[email protected]/panel.js:1183:9#012_setPanelMenu@/usr/share/gnome-shell/extensions/[email protected]/panel.js:571:41#012_init@/usr/share/gnome-shell/extensions/[email protected]/panel.js:163:18#012_createPanel@/usr/share/gnome-shell/extensions/[email protected]/panelManager.js:331:17#012enable/<@/usr/share/gnome-shell/extensions/[email protected]/panelManager.js:87:42#012enable@/usr/share/gnome-shell/extensions/[email protected]/panelManager.js:86:77#012_enable@/usr/share/gnome-shell/extensions/[email protected]/extension.js:94:18#012enable@/usr/share/gnome-shell/extensions/[email protected]/extension.js:62:5#012_callExtensionEnable@resource:///org/gnome/shell/ui/extensionSystem.js:166:32#012_onEnabledExtensionsChanged/<@resource:///org/gnome/shell/ui/extensionSystem.js:475:18#012_onEnabledExtensionsChanged@resource:///org/gnome/shell/ui/extensionSystem.js:474:11
gnome-shell[31361]: Error looking up permission: GDBus.Error:org.freedesktop.portal.Error.NotFound: No entry for geolocation

第一行包含(下面缩写):

@resource:///.../gnome-shell/extensions/[email protected]/panel.js:1183:9

... 对应于仪表板GNOME shell 扩展。当我尝试停用它时,我的确能够再次锁定屏幕。

然后我查看了我的主文件夹,看是否能找到与此扩展相对应的缓存项,并清除它们。然而,我一无所获。

然后我注意到这个扩展似乎过着双重生活。最初它显示为“正常”扩展。当我检查是否有同名的包时,包gnome-shell-extension-dash-to-panel出现了,结果发现它已经安装了。

我首先尝试apt install --reinstall gnome-shell-extension-dash-to-panel停用并重新激活该扩展,但这样做并没有帮助。

之后,我最终清除了该软件包 ( apt purge gnome-shell-extension-dash-to-panel),并注意到它在 GNOME 中仍然显示为已安装的系统扩展。因此,我停用了它,但没有删除它的选项(非系统扩展通常如此)。因此,我停用了它。

完成所有操作后,我重新安装了软件包gnome-shell-extension-dash-to-panel并激活了扩展程序,现在我又可以锁定我的屏幕了。

因此,也许我对升级前残留物的猜测并不太错。

相关内容