GNOME Display Failure: Black Monitor, GDM Crash, and Recovery
Host: user-System-Product-Name (ASUS Pro WS WRX90E-SAGE SE)
OS: Ubuntu 24.04.4 LTS (Noble), kernel 6.17.0-29-generic
Status after fix: Resolved — GDM active, session desktop files restored
Table of Contents
2.
6.
10.
Executive Summary
The monitor showed no graphical login screen because GNOME Display Manager (GDM) crashed in a loop with the error:
Gdm: GdmSession: no session desktop files installed, aborting...
Plain Text
복사
The underlying problem was that critical session packages had been removed, including ubuntu-session, which installs the .desktop session definitions under /usr/share/xsessions/ and /usr/share/wayland-sessions/. Without those files, GDM cannot start any desktop session and aborts (signal TRAP, core-dump).
Secondary boot messages (gpu-manager.service, NetworkManager-wait-online.service) were misleading or side effects; they were not the primary reason for the black screen.
Fix: Reinstall ubuntu-session and ubuntu-desktop-minimal, then restart GDM.
Symptoms
User-visible behavior
Symptom | Description |
Black / blank monitor | No GNOME login screen, no desktop after boot |
Boot may otherwise complete | System can still be reachable via SSH or serial console |
Repeated failure at graphical target | graphical.target is set, but no usable GUI session |
Messages shown at boot (TTY / systemd)
The user reported messages similar to:
[FAILED] Failed to start gpu-manager.service - Detect the available GPUs and deal with any system changes.
[FAILED] Failed to start gdm.service - GNOME Display Manager.
[FAILED] Failed to start NetworkManager-wait-online.service - Network Manager Wait Online.
Plain Text
복사
(Typographical variants like gpu-manager.seruice / NetworkManager-wait-online.seruice are display or transcription errors; the actual unit names use .service.)
gdm.service state (before fix)
Active: failed (Result: core-dump)
Main PID: ... (code=dumped, signal=TRAP)
gdm.service: Start request repeated too quickly.
gdm.service: Scheduled restart job, restart counter is at 12.
Plain Text
복사
GDM attempted to restart many times, hit systemd’s rate limit, and then stayed failed.
Misleading secondary failures
Service | Observed behavior | Relation to black screen |
gpu-manager.service | Sometimes start-limit-hit during GDM restart storm; otherwise exited successfully | Not root cause — triggered by rapid restarts alongside GDM |
NetworkManager-wait-online.service | Timed out waiting for network online within ~60s | Unrelated to display — affects boot ordering / network-dependent services only |
What Was Not the Cause
Investigation ruled out several common hypotheses:
1. NVIDIA driver / GPU hardware failure
•
nvidia-smi worked correctly.
•
Driver: 580.159.03, kernel module loaded.
•
Two NVIDIA H200 NVL GPUs detected (PCI:01:00.0, PCI:F1:00.0).
•
gpu-manager.log ended with: Nothing to do (no misconfiguration requiring offload changes).
2. Missing /dev/dri devices
•
/dev/dri/card0, card1, card2 and renderD128, renderD129 were present.
3. gpu-manager as primary failure
•
On successful runs, gpu-manager.service finished with status=0/SUCCESS.
•
Failure entries correlated with GDM repeatedly starting/stopping GPU detection, not with GPU detection logic itself.
4. Network wait blocking the display stack directly
•
NetworkManager-wait-online failure does not prevent GDM from starting; it only marks a dependency unit failed for boot “online” networking.
Root Cause
Missing session desktop files
GDM requires at least one session definition in:
•
/usr/share/xsessions/*.desktop (X11 sessions)
•
/usr/share/wayland-sessions/*.desktop (Wayland sessions)
Before the incident, both directories were entirely absent on disk:
ls /usr/share/xsessions/ # No such file or directory
ls /usr/share/wayland-sessions/ # No such file or directory
Bash
복사
The package ubuntu-session (not merely gnome-session-bin) provides Ubuntu’s default session entries, e.g.:
•
ubuntu.desktop
•
ubuntu-wayland.desktop
With ubuntu-session removed, GDM logs:
Gdm: GdmSession: no session desktop files installed, aborting...
Plain Text
복사
and then crashes (signal=TRAP, core-dump).
How the packages were removed
APT history (/var/log/apt/history.log) records an operation on 2026-05-21 16:53:18:
Commandline: apt install -y libfuse2 fuse
Plain Text
복사
That install removed (among others):
Package | Role |
ubuntu-session | Session .desktop files for GDM |
ubuntu-desktop-minimal | Meta-package pulling minimal Ubuntu GNOME desktop stack |
nautilus | File manager |
xdg-desktop-portal, xdg-desktop-portal-gnome, xdg-desktop-portal-gtk | Desktop integration / sandbox portals |
gnome-remote-desktop, gvfs-fuse, fuse3, fuse-overlayfs, etc. | Related desktop/fuse stack |
Interpretation: Installing legacy FUSE v2 (fuse / libfuse2) conflicted with packages that depend on FUSE3 (fuse3). APT resolved the conflict by removing the FUSE3-dependent desktop stack, including ubuntu-session. Core components like gdm3, gnome-shell, and gnome-session-bin remained installed, so the system looked “partially GNOME” but could not present a login session.
Why the screen stayed black
Boot flow (simplified):
flowchart TD
A[systemd reaches graphical.target] --> B[gdm.service starts]
B --> C{Session .desktop files exist?}
C -->|No| D[GDM: no session desktop files installed]
D --> E[GDM aborts - TRAP / core-dump]
E --> F[systemd restarts GDM]
F --> G{Restart limit hit?}
G -->|Yes| H[gdm.service failed permanently]
H --> I[Black monitor - no login UI]
C -->|Yes| J[GDM shows login screen]
J --> K[User session starts - GNOME Shell]Mermaid
복사
Diagnostic Process
Recommended order of checks for similar incidents:
Step 1 — Confirm GDM failure
systemctl status gdm.service
journalctl -b -u gdm.service --no-pager -n 50
Bash
복사
Look for: no session desktop files installed, core-dump, TRAP, Start request repeated too quickly.
Step 2 — Verify session directories
ls -la /usr/share/xsessions/
ls -la /usr/share/wayland-sessions/
Bash
복사
Empty or missing directories strongly indicate missing ubuntu-session (or equivalent session package).
Step 3 — Check package installation state
dpkg -l ubuntu-session ubuntu-desktop-minimal
apt list --installed 2>/dev/null | grep -E 'ubuntu-session|ubuntu-desktop'
Bash
복사
un / not installed for ubuntu-session confirms the diagnosis.
Step 4 — Correlate with APT history
grep -E 'ubuntu-session|ubuntu-desktop-minimal|Remove:' /var/log/apt/history.log | tail -20
Bash
복사
Identifies when and what command removed the session packages.
Step 5 — Rule out GPU issues (optional, this host)
nvidia-smi
lspci | grep -iE 'vga|3d|display'
cat /var/log/gpu-manager.log | tail -30
Bash
복사
Step 6 — Do not over-focus on secondary failed units
systemctl status gpu-manager.service NetworkManager-wait-online.service
Bash
복사
Interpret these only after GDM/session health is established.
Evidence
Critical journal lines (GDM)
gdm3[...]: Gdm: GdmSession: no session desktop files installed, aborting...
systemd[1]: gdm.service: Main process exited, code=dumped, status=5/TRAP
systemd[1]: gdm.service: Failed with result 'core-dump'.
systemd[1]: gdm.service: Start request repeated too quickly.
Plain Text
복사
Packages still installed while sessions were missing
gdm3, gnome-shell, gnome-session-bin, and gnome-session-common remained installed (ii state). Only the session registration layer (ubuntu-session) was gone — a subtle failure mode.
APT removal record (excerpt)
Start-Date: 2026-05-21 16:53:18
Commandline: apt install -y libfuse2 fuse
Remove: ... ubuntu-session:amd64 (46.0-1ubuntu4), ubuntu-desktop-minimal:amd64 (1.539.2), ...
End-Date: 2026-05-21 16:53:39
Plain Text
복사
APT reinstall record (fix)
Start-Date: 2026-05-21 18:37:23
Commandline: apt install --reinstall ubuntu-session ubuntu-desktop-minimal
Install: ubuntu-session:amd64 (46.0-1ubuntu4), ubuntu-desktop-minimal:amd64 (1.539.2), ...
End-Date: 2026-05-21 18:37:55
Plain Text
복사
Resolution
Commands applied (successful)
sudo apt update
sudo apt install --reinstall ubuntu-session ubuntu-desktop-minimal
sudo systemctl restart gdm
Bash
복사
What these packages restore
Package | Restores |
ubuntu-session | /usr/share/xsessions/ubuntu.desktop, /usr/share/wayland-sessions/ubuntu-wayland.desktop |
ubuntu-desktop-minimal | Meta-package; pulls back minimal GNOME desktop dependencies (e.g. nautilus, portal packages) removed in the same APT transaction |
Alternative / broader repair
If problems persist or more desktop components are missing:
sudo apt install --reinstall ubuntu-desktop-minimal ubuntu-session gdm3
# or, for a full desktop meta-package (heavier):
# sudo apt install ubuntu-desktop
Bash
복사
If GDM does not recover after reinstall
sudo systemctl reset-failed gdm gpu-manager
sudo systemctl restart gdm
journalctl -u gdm -n 30 --no-pager
Bash
복사
Verification After Fix
GDM active
systemctl is-active gdm
# expected: active
Bash
복사
Session files present
ls /usr/share/wayland-sessions/
# expected: ubuntu.desktop ubuntu-wayland.desktop
Bash
복사
User login
Journal showed successful password authentication:
gdm-password[...]: pam_unix(gdm-password:session): session opened for user user(uid=1000)
gdm-password[...]: gkr-pam: unlocked login keyring
Plain Text
복사
Hardware Notes
This machine is a workstation/server-class board with multiple graphics devices:
Device | PCI role | Display notes |
ASPEED Graphics (BMC) | VGA compatible, boot VGA | Typical output for IPMI/KVM or onboard VGA port |
NVIDIA H200 NVL ×2 | 3D controller, Disp.A: Off in nvidia-smi | Compute GPUs; may not drive a monitor unless explicitly configured for display |
For future display troubleshooting after GDM is healthy:
•
Confirm the monitor is cabled to a port that actually outputs (often ASPEED VGA on this chassis, not NVIDIA).
•
NVIDIA “Disp.A: Off” alone does not explain a GDM session-file crash; it only matters once the login stack works.
Prevention
1.
Avoid blind apt install of legacy FUSE2 (fuse, libfuse2) on Ubuntu 24.04 desktop systems without checking what APT will remove. Run:
apt install --simulate fuse libfuse2
Bash
복사
and inspect the Removes: line.
2.
Before removing meta-packages (ubuntu-desktop-minimal, ubuntu-session), verify nothing depends on session files for GDM.
3.
After any desktop-related package change, verify:
test -d /usr/share/wayland-sessions && ls /usr/share/wayland-sessions/
systemctl is-active gdm
Bash
복사
4.
Keep SSH or console access on headless/GPU servers so GDM failures can be fixed without a working monitor.
5.
Document intentional package removals in /var/log/apt/history.log — that log was decisive for finding the fuse / libfuse2 trigger on this host.
Quick Reference
Question | Answer |
Why black screen? | GDM crashed: no session .desktop files |
Main culprit package? | ubuntu-session removed |
Triggering apt command? | apt install -y libfuse2 fuse (2026-05-21 16:53) |
Fix? | Reinstall ubuntu-session + ubuntu-desktop-minimal, restart gdm |
Were NVIDIA GPUs broken? | No — drivers worked; not the primary issue |
Was gpu-manager the root cause? | No — side effect / rate limit during GDM crash loop |
Was network wait the root cause? | No — unrelated to display session startup |
안녕하세요
•
관련 기술 문의와 R&D 공동 연구 사업 관련 문의는 “glory@keti.re.kr”로 연락 부탁드립니다.
Hello 
•
For technical and business inquiries, please contact me at “glory@keti.re.kr”
