简洁版本:尝试(并失败)安装 AMD radeon 专有驱动程序后,我卸载了它们并删除了它安装的软件包,但现在:
- 在启动时,我的显卡是
UNCLAIMED
。 - GDM 不会启动,直到我这样做:(
sudo modprobe amdgpu
这也占用了我的显卡) - 登录后,
DISPLAY
现在是:1
,:0
我不明白
我应该怎么做才能返回到实际可启动的工作系统?
细节
我新安装的一切工作正常,除了x11vnc
。
为了解决这个问题,我尝试使用 安装(一团糟的)专有 AMD radeon 驱动程序amdgpu-install_22.20.50200-1_all.deb
,但失败了。经过/etc/apt/sources.list.d/*
多次修改后,最终由于 gcc 版本不匹配而无法构建内核模块,这时我放弃了。为了清理拙劣的安装尝试,我运行了:
sudo amdgpu-install --uninstall
sudo apt purge amdgpu-install
sudo apt autoremove
重启后,gdm
无法启动。我注意到sudo lshw -c display
显示:
$ sudo lshw -c display
*-display UNCLAIMED
description: VGA compatible controller
product: Baffin [Radeon RX 550 640SP / RX 560/560X]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:02:00.0
version: ff
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi vga_controller bus_master cap_list
configuration: latency=0
resources: memory:d0000000-dfffffff memory:cfe00000-cfffffff ioport:b000(size=256) memory:fbb80000-fbbbffff memory:c0000-dffff
*-graphics
product: VESA VGA
physical id: 1
logical name: /dev/fb0
capabilities: fb
configuration: depth=32 resolution=1280,1024
因此,我比较了/var/log/Xorg.0.log
(现在出现故障)和 ~/.local/share/xorg/Xorg.0.log
(自上次启动成功后就没有重写过),发现后者有一行LoadModule: "amdgpu"
,因此我尝试了一下sudo modprobe amdgpu
,gdm
启动了,现在显卡也被“声明”了:
$ sudo lshw -c display
*-display
description: VGA compatible controller
product: Baffin [Radeon RX 550 640SP / RX 560/560X]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:02:00.0
version: ff
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi vga_controller bus_master cap_list rom
configuration: driver=amdgpu latency=0
resources: irq:32 memory:d0000000-dfffffff memory:cfe00000-cfffffff ioport:b000(size=256) memory:fbb80000-fbbbffff memory:c0000-dffff
登录后,我发现DISPLAY=:1
在驱动程序安装尝试之前,它在哪里DISPLAY=:0
。这可能是第一次尝试启动的副作用:0
,在无法识别的卡上失败,然后在它之后,modprobe
似乎现在有一个新的(可识别的)显卡,因此它给出:1
。
我该怎么做才能收拾这个烂摊子?我不想对 的加载进行硬编码amdgpu
,因为我认为它之前没有被硬编码过……
我认为从头开始重新安装 Ubuntu 22.04 不会有太多工作,但不用说,如果可能的话,它更愿意了解出了什么问题并修复它。
您知道我应该怎么做才能amdgpu
自动加载并让 DISPLAY:0
再次工作吗?
答案1
因此显然 amd 安装程序明智地创建了:
/etc/modprobe.d/blacklist-amdgpu.conf
包含:
blacklist amdgpu
这就是重启后模块无法加载的原因。删除该文件后,一切又恢复正常。