首页 > 解决方案 > Ryzen 7 4800、Ubuntu 20.04.02:显示和/或 USB 问题

问题描述

在配备 Ryzen 7 4800 的 ASUS PN50 mini-PC 上安装 Ubuntu Studio 20.04。升级到 20.04.2,内核 5.8.0-44-lowlatency。内存 32 GB 3200 MHz。安装本身很顺利。该框仅运行 Radeon 图形。没有英伟达。桌面是 Xfce 4.14。

我可能正在混合苹果和橙子,但由于我无法判断(我不是硬件怪胎),我将报告不止一个问题。它们可能相关,也可能不相关,请多多包涵。

前奏:安装后系统似乎没有启动。卡在 Ubuntu 启动画面中。

仔细一看,lightdm 无法启动。这一事实使系统无限期地等待。

我修改了/etc/default/grub,删除了“quiet splash”,添加了“nomodeset”。系统现在启动到文本。登录后,我手动执行“startx”,该框通常表现良好。图形看起来不错,反应灵敏。后来我在 grub 中添加了“amdgpu.exp_hw_support=1”,但我没有注意到任何区别。gpumanager 日志以“Nothing to do”结尾。

我不确定 lightdm 是做什么的,但它是默认的显示管理器:
/etc/X11/default-display-manager: /usr/sbin/lightdm

这里是systemctl status lightdm.service输出。我不确定它在告诉我什么。

lightdm.service - Light Display Manager
     Loaded: loaded (/lib/systemd/system/lightdm.service; indirect; vendor preset: enabled)
     Active: failed (Result: exit-code) since Mon 2021-03-15 10:08:48 CET; 4h 12min ago
       Docs: man:lightdm(1)
    Process: 1519 ExecStartPre=/bin/sh -c [ "$(basename $(cat /etc/X11/default-display-manager 2>/dev/null))" = "lightdm" ] (code=exited, status=0/SUCCESS)
    Process: 1522 ExecStart=/usr/sbin/lightdm (code=exited, status=1/FAILURE)
   Main PID: 1522 (code=exited, status=1/FAILURE)

mar 15 10:08:48 blizzard systemd[1]: lightdm.service: Scheduled restart job, restart counter is at 5.
mar 15 10:08:48 blizzard systemd[1]: Stopped Light Display Manager.
mar 15 10:08:48 blizzard systemd[1]: lightdm.service: Start request repeated too quickly.
mar 15 10:08:48 blizzard systemd[1]: lightdm.service: Failed with result 'exit-code'.
mar 15 10:08:48 blizzard systemd[1]: Failed to start Light Display Manager.

我已禁用 Xfce 电源管理器中的所有内容,因此它永远不会干扰。

问题 1: lightdm 呢?这是个问题吗?

问题 2:如果我离开盒子超过几分钟,就没有更多的键盘响应。鼠标指针移动,但单击无效。(所有 USB。)首先我认为屏幕已经冻结,但它没有。我可以 ssh 进入盒子,例如,杀死一个任务,它就会从屏幕上消失。通过 ssh 连接,该框看起来完全活跃,包括“ssh -X”。-- 挂起后醒来时也会发生同样的事情。

这让我远离。只要我这样做,盒子就会保持响应,活跃和踢。

问题 3:我无法设置多个物理屏幕。连接 HDMI 屏幕效果很好。USB DisplayPort 屏幕也是如此。如果两者都插入 USB DisplayPort 优先。无论哪种情况,在显示设置(或 ARandR)中都只能看到一个屏幕,并且必须在启动时插入。如果我拔下 USB DisplayPort 屏幕,它会丢失并且无法再次连接。(相比之下,这在安装了 DisplayLink 的较旧的 Ubuntu 机器上运行良好。)

[旁注:找不到 Ryzen 的 Stackoverflow 标签。]

标签: ubuntu-20.04

解决方案


经过两天的lightdm速成班,答案就在这里,和锐龙无关。

lightdm 配置中缺少一个文件。这是从头开始安装的,所以要么它从 Ubuntu Studio 发行版中丢失,要么我自己不知不觉地删除了它。

该文件是/usr/share/lightdm/lightdm.conf.d/60-lightdm-gtk-greeter.conf::

[Seat:*]
greeter-session=lightdm-gtk-greeter

遗漏使 lightdm 抱怨(中lightdm.log

Seat seat0: Failed to find session configuration default
Seat seat0: Failed to create greeter session

添加文件解决了所有 3 个问题,确认它们是相关的。无响应(“问题 2”)是在没有正确屏幕配置的情况下设置屏幕锁定的结果。

对于像我一样没有经验就开始使用 lightdm 的人,我建议运行lightdm --show-config以将输出与从工作系统获得的输出进行比较。无论如何,还要安装 Xephyr(包名 xserver-xephyr)才能运行lightdm --debug --test-mode. 精彩的。


推荐阅读