最近我的 lightdm 停止正常工作(请注意,只有启动到恢复模式或在我的 linux 启动参数中添加“nomodeset”时,我才能获得欢迎屏幕。但是,使用 nomodeset 似乎会阻止我在暂停会话后恢复会话。)
这个问题似乎是在我使用外接显示器后开始的,然后 lightdm 想要使用它,但我删除了我的~/.config/monitors.xml
,使用sudo dpkg-reconfigure xserver-xorg
并且在使用“nomodeset”启动时没有看到有关丢失显示器的消息,所以我不确定这是否仍然是一个问题。
有人能帮我找出与我的显示器相关的哪些设置缺失/搞砸了吗?
以下是基本信息
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.4 LTS
Release: 22.04
Codename: jammy
$ sudo lshw -c display
*-display
description: VGA compatible controller
product: Picasso/Raven 2 [Radeon Vega Series / Radeon Vega Mobile Series]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:04:00.0
version: c1
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi msix vga_controller bus_master cap_list
configuration: driver=amdgpu latency=0
resources: irq:24 memory:e0000000-efffffff memory:f0000000-f01fffff ioport:e000(size=256) memory:fe800000-fe87ffff
$ sudo systemctl status lightdm
× lightdm.service - Light Display Manager
Loaded: loaded (/lib/systemd/system/lightdm.service; indirect; vendor preset: enabled)
Active: failed (Result: exit-code) since Fri 2024-06-14 17:09:40 EDT; 14s ago
Docs: man:lightdm(1)
Process: 4436 ExecStartPre=/bin/sh -c [ "$(basename $(cat /etc/X11/default-display-manager 2>/dev/null))" = "lightdm" ] (code=exited, status=0/SUCCESS)
Process: 4439 ExecStart=/usr/sbin/lightdm (code=exited, status=1/FAILURE)
Main PID: 4439 (code=exited, status=1/FAILURE)
CPU: 108ms
Jun 14 17:09:40 computer systemd[1]: lightdm.service: Scheduled restart job, restart counter is at 5.
Jun 14 17:09:40 computer systemd[1]: Stopped Light Display Manager.
Jun 14 17:09:40 computer systemd[1]: lightdm.service: Start request repeated too quickly.
Jun 14 17:09:40 computer systemd[1]: lightdm.service: Failed with result 'exit-code'.
Jun 14 17:09:40 computer systemd[1]: Failed to start Light Display Manager.
以下是 /var/log/lightdm/ 的输出
[+0.00s] DEBUG: Starting Light Display Manager 1.30.0, UID=0 PID=4439
[+0.00s] DEBUG: Loading configuration dirs from /usr/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-arctica-greeter-guest-wrapper.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-arctica-greeter.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-disable-guest.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-disable-log-backup.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-greeter-wrapper.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-guest-wrapper.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-slick-greeter.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-ubuntu-mate.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-unity-greeter.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-unity.conf
[+0.00s] DEBUG: Loading configuration from /usr/share/lightdm/lightdm.conf.d/50-xserver-command.conf
[+0.00s] DEBUG: Loading configuration dirs from /usr/local/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /var/lib/flatpak/exports/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /etc/xdg/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf.d/90-arctica-greeter.conf
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf.d/91-arctica-greeter-guest-session.conf
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf.d/91-arctica-greeter-mate.conf
[+0.00s] DEBUG: [SeatDefaults] is now called [Seat:*], please update this configuration
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf
[+0.00s] DEBUG: Registered seat module local
[+0.00s] DEBUG: Registered seat module xremote
[+0.00s] DEBUG: Using D-Bus name org.freedesktop.DisplayManager
[+0.01s] DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’
[+0.01s] DEBUG: Monitoring logind for seats
[+0.01s] DEBUG: New seat added from logind: seat0
[+0.01s] DEBUG: Seat seat0: Loading properties from config section Seat:*
[+0.01s] DEBUG: Seat seat0 has property CanMultiSession=no
[+0.01s] DEBUG: Seat seat0: Starting
[+0.01s] DEBUG: Seat seat0: Creating greeter session
[+0.01s] DEBUG: Seat seat0: Creating display server of type x
[+0.01s] DEBUG: Using VT 7
[+0.01s] DEBUG: Seat seat0: Starting local X display on VT 7
[+0.01s] DEBUG: XServer 0: Logging to /var/log/lightdm/x-0.log
[+0.01s] DEBUG: XServer 0: Writing X server authority to /var/run/lightdm/root/:0
[+0.01s] DEBUG: XServer 0: Launching X Server
[+0.01s] DEBUG: Launching process 4444: /usr/bin/X -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
[+0.01s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
[+0.01s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
[+0.01s] DEBUG: Loading users from org.freedesktop.Accounts
[+0.01s] DEBUG: User /org/freedesktop/Accounts/User1001 added
[+0.02s] DEBUG: User /org/freedesktop/Accounts/User1000 added
[+0.27s] DEBUG: Process 2086 terminated with signal 6
[+0.27s] DEBUG: XServer 0: X server stopped
[+0.27s] DEBUG: Releasing VT 7
[+0.27s] DEBUG: XServer 0: Removing X server authority /var/run/lightdm/root/:0
[+0.27s] DEBUG: Seat seat0: Display server stopped
[+0.27s] DEBUG: Seat seat0: Stopping session
[+0.27s] DEBUG: Seat seat0: Session stopped
[+0.27s] DEBUG: Seat seat0: Stopping display server, no sessions require it
[+0.27s] DEBUG: Seat seat0: Stopping; greeter display server failed to start
[+0.27s] DEBUG: Seat seat0: Stopping
[+0.27s] DEBUG: Seat seat0: Stopped
[+0.27s] DEBUG: Required seat has stopped
[+0.27s] DEBUG: Stopping display manager
[+0.27s] DEBUG: Display manager stopped
[+0.27s] DEBUG: Stopping daemon
[+0.27s] DEBUG: Exiting with return value 1
还有更多
$ sudo less x-0.log
X.Org X Server 1.21.1.4
X Protocol Version 11, Revision 0
Current Operating System: Linux computer 5.15.0-112-generic #122-Ubuntu SMP Thu May 23 07:48:21 UTC 2024 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.15.0-112-generic root=UUID=742c43fb-bb10-4440-9d51-747c120972f6 ro resume=UUID=e03ba40a-11c4-4e82-84a5-25624f8926a7
xorg-server 2:21.1.4-2ubuntu1.7~22.04.10 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.40.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Jun 14 17:29:04 2024
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
vesa: Ignoring device with a bound kernel driver
vesa: Ignoring device with a bound kernel driver
(EE)
Fatal server error:
(EE) no screens found(EE)
(EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE)
(EE) Server terminated with error (1). Closing log file.
/var/log/Xorg.0.log 的输出很长,完整的输出发布在这里,但简而言之,
$ grep -A2 -B2 "\((EE)\|(WW)\)" /var/log/Xorg.0.log
[ 40.356] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 40.356] (==) Log file: "/var/log/Xorg.0.log", Time: Fri Jun 14 17:29:04 2024
[ 40.356] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
--
[ 40.357] (==) Automatically binding GPU devices
[ 40.357] (==) Max clients allowed: 256, resource mask: 0x1fffff
[ 40.358] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 40.358] Entry deleted from font path.
[ 40.358] (==) FontPath set to:
--
[ 40.447] (II) FBDEV: driver for framebuffer: fbdev
[ 40.447] (II) VESA: driver for VESA chipsets: vesa
[ 40.447] (EE) open /dev/dri/card0: No such file or directory
[ 40.447] (WW) Falling back to old probe method for modesetting
[ 40.447] (EE) open /dev/dri/card0: No such file or directory
[ 40.447] (II) Loading sub module "fbdevhw"
[ 40.447] (II) LoadModule: "fbdevhw"
--
[ 40.447] compiled for 1.21.1.4, module version = 0.0.2
[ 40.447] ABI class: X.Org Video Driver, version 25.2
[ 40.447] (EE) Unable to find a valid framebuffer device
[ 40.447] (WW) Falling back to old probe method for fbdev
[ 40.447] (II) Loading sub module "fbdevhw"
[ 40.447] (II) LoadModule: "fbdevhw"
--
[ 40.447] compiled for 1.21.1.4, module version = 0.0.2
[ 40.448] ABI class: X.Org Video Driver, version 25.2
[ 40.448] (EE) open /dev/fb0: No such file or directory
[ 40.448] vesa: Ignoring device with a bound kernel driver
[ 40.448] (EE) Screen 0 deleted because of no matching config section.
[ 40.448] (II) UnloadModule: "modesetting"
[ 40.448] (EE) Screen 0 deleted because of no matching config section.
[ 40.448] (II) UnloadModule: "fbdev"
[ 40.448] (II) UnloadSubModule: "fbdevhw"
[ 40.448] (EE) Screen 0 deleted because of no matching config section.
[ 40.448] (II) UnloadModule: "vesa"
[ 40.448] (EE) Device(s) detected, but none match those in the config file.
[ 40.448] (==) Matched ati as autoconfigured driver 0
[ 40.448] (==) Matched modesetting as autoconfigured driver 1
--
[ 40.453] (II) FBDEV: driver for framebuffer: fbdev
[ 40.453] (II) VESA: driver for VESA chipsets: vesa
[ 40.453] (WW) xf86OpenConsole: setpgid failed: Operation not permitted
[ 40.453] (WW) xf86OpenConsole: setsid failed: Operation not permitted
[ 40.453] (EE) open /dev/dri/card0: No such file or directory
[ 40.453] (WW) Falling back to old probe method for modesetting
[ 40.453] (EE) open /dev/dri/card0: No such file or directory
[ 40.453] (II) Loading sub module "fbdevhw"
[ 40.453] (II) LoadModule: "fbdevhw"
--
[ 40.453] compiled for 1.21.1.4, module version = 0.0.2
[ 40.453] ABI class: X.Org Video Driver, version 25.2
[ 40.453] (EE) Unable to find a valid framebuffer device
[ 40.453] (WW) Falling back to old probe method for fbdev
[ 40.453] (II) Loading sub module "fbdevhw"
[ 40.453] (II) LoadModule: "fbdevhw"
--
[ 40.453] compiled for 1.21.1.4, module version = 0.0.2
[ 40.453] ABI class: X.Org Video Driver, version 25.2
[ 40.453] (EE) open /dev/fb0: No such file or directory
[ 40.453] vesa: Ignoring device with a bound kernel driver
[ 40.453] (EE) Screen 0 deleted because of no matching config section.
[ 40.453] (II) UnloadModule: "modesetting"
[ 40.453] (EE) Screen 0 deleted because of no matching config section.
[ 40.453] (II) UnloadModule: "fbdev"
[ 40.453] (II) UnloadSubModule: "fbdevhw"
[ 40.453] (II) UnloadSubModule: "fbdevhw"
[ 40.453] (II) UnloadSubModule: "fbdevhw"
[ 40.453] (EE) Screen 0 deleted because of no matching config section.
[ 40.453] (II) UnloadModule: "vesa"
[ 40.453] (EE) Device(s) detected, but none match those in the config file.
[ 40.453] (EE)
Fatal server error:
[ 40.453] (EE) no screens found(EE)
[ 40.454] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 40.454] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 40.454] (EE)
[ 40.454] (EE) Server terminated with error (1). Closing log file.
我试过使用 gdm3,但它也不起作用,例如
sudo systemctl status gdm3
● gdm.service - GNOME Display Manager
Loaded: loaded (/lib/systemd/system/gdm.service; static)
Active: active (running) since Fri 2024-06-14 17:47:20 EDT; 26s ago
Process: 28929 ExecStartPre=/usr/share/gdm/generate-config (code=exited, status=0/SUCCESS)
Main PID: 28934 (gdm3)
Tasks: 3 (limit: 11688)
Memory: 2.8M
CPU: 301ms
CGroup: /system.slice/gdm.service
└─28934 /usr/sbin/gdm3
Jun 14 17:47:31 computer gdm3[28934]: Gdm: GdmDisplay: Session never registered, failing
Jun 14 17:47:31 computer gdm3[28934]: Gdm: Child process -29017 was already dead.
Jun 14 17:47:31 computer gdm-launch-environment][29021]: pam_unix(gdm-launch-environment:session): session opened for user gdm(uid=130) by LOGIN(uid=0)
Jun 14 17:47:31 computer gdm-launch-environment][29021]: pam_unix(gdm-launch-environment:session): session closed for user gdm
Jun 14 17:47:31 computer gdm3[28934]: Gdm: GdmDisplay: Session never registered, failing
Jun 14 17:47:31 computer gdm-launch-environment][29021]: GLib-GObject: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jun 14 17:47:31 computer gdm3[28934]: Gdm: GdmLocalDisplayFactory: maximum number of X display failures reached: check X server log for errors
Jun 14 17:47:31 computer gdm3[28934]: Gdm: Child process -29027 was already dead.
Jun 14 17:47:31 computer gdm3[28934]: Gdm: GdmDisplay: Session never registered, failing
Jun 14 17:47:31 computer gdm3[28934]: Gdm: Child process -29027 was already dead.
我可以通过下载并安装相关的 .deb amd 驱动程序来解决这个问题
然后我运行
amdgpu-install
它并下载了额外的.deb 文件并似乎解决了这个问题。系统更新后我遇到了同样的问题。通过运行此命令创建一个新的 xorg 配置文件并将其复制到以下位置解决了此问题
/etc/X11/xorg.conf
: