结论

结论

升级到 17.10 后,我在 Xorg 和 Unity 上使用 GNOME(我最常用的)都没有遇到任何问题。但有一次,在 GNOME 会话中,我无法打开某些应用程序(包括“设置”),从那时起,我就无法登录 GNOME 会话了。

会发生什么 :

  • 当尝试登录 GNOME(原始 GNOME 或“Ubuntu”GNOME,以及 Xorg 或 Wayland - 当列出时)时,我输入密码,然后屏幕变黑几秒钟,然后我回到登录屏幕。
  • 当登录 Unity 会话(或多或少有效)时,我收到此错误:

    无法应用显示器的存储配置

    所需虚拟大小与可用大小不符:请求大小=(1,1),最小大小=(320,200),最大大小=(8192,8192)

  • 后来我注意到启动时显示了更多的行,包括几次这种错误Error: Method parse/execution failed ...ACPI Error: [_OSI] Namespace lookup failure以及这一行Couldn't get size : 0x800000000000000e

我尝试过:

  • 我读此问题(Ubuntu 17.10 登录 wayland 后冻结),但由于我根本无法登录 GNOME,我无法禁用扩展程序来查看是否能解决问题。删除并重新安装 NVIDIA 软件包没有帮助(除了 Intel 默认显卡外,我还有 GeForce GT 840M)。
  • 我更换了显卡的驱动程序。我尝试了 NVIDIA 专有驱动程序(版本 384)和“X.Org X 服务器”,唯一改变的就是错误消息中的“最小”和“最大”大小。
  • 由于我没有使用任何第二台显示器(我用的是笔记本电脑,所以只有内置显示器),我检查了 Ubuntu 是否没有尝试连接到另一个不存在的显示器,并且在系统设置中没有看到其他显示器。设置还告诉我分辨率是默认分辨率(1366x768),所以我猜它正确识别了内置显示器。在最后一点上我可能(很可能)错了。
  • 当然,每次尝试后我都会重新启动系统,以确保它没有解决我的问题。

答案1

我通过发出以下命令解决了:

dpkg-reconfigure lightdm && service lightdm restart

也许同样可以解决 gdm

答案2

我最终按照@Panther 的建议做了:我将 GNOME 重置为这里解释,但我在 Unity 中仍然遇到问题。由于我主要使用 GNOME,所以我并不关心 Unity,但出于其他几个原因,我最终重新安装了 17.10。

由于这个问题出现已经有一段时间了,我对此不太确定,但我似乎记得是 Shell 扩展导致了这个问题。我认为可能是国际空间站上方,因为我在出现问题的那天安装了它,并且在重置后没有重新安装它,但不确定(对于遇到同样问题的任何人来说)。

答案3

我从 16.10 升级到 17.10 后遇到了类似的问题:gnome 会话可以工作,但 unity 会话一直显示“所需的虚拟尺寸不适合[...]”消息并且我的双显示器设置没有被正确处理(显示器被交换了)。

然后我查看了该~/.config/monitors.xml文件,发现它有改变格式!现在它的顶部是一个<monitors version="2">字符串,而前一个字符串有一个<monitors version="1">字符串,文件的其余部分显示出完全不同的布局和标签。

因此我得出结论“所需的虚拟尺寸不适合[...]”正在显示,unity-settings-daemon无法解析新monitors.xml文件的内容。

除此之外,gnome-control-center由于错误,在 Unity 会话期间显示面板无法工作:

GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.Mutter.DisplayConfig was not provided by any .service files

因此我安装了unity-control-center,并运行了它,并且确信显示面板正常工作,并且monitor.xml写入了正确的(以前的版本)。

重启后,一切都按预期运行。

结论

monitor.xml 问题似乎与预期和实际不匹配有关。Unity 和 Gnome shell 编写和解析该文件的不同且不兼容的版本,这使得无法在这两种会话类型之间无缝切换。

相关内容