Graphical.target loaded inactive dead - remote only - no display plugged in

Hello all,
please assist, comment, help.

When I start myfedora with monitor plugged in via displayport (also mouse and keyboard plugged in),
all is OK.

However when I start myfedora with just eth lan cable plugged in (no monitor, mouse, keyboard plugged in),
and then ssh myfedora
then I see following.

root@myfedora:~# systemctl list-units --type=target
  UNIT                        LOAD   ACTIVE   SUB    JOB    DESCRIPTION                            
  graphical.target            loaded inactive dead   start  Graphical Interface
  multi-user.target           loaded inactive dead   start  Multi-User System
   ... all other targets      loaded active   active
root@myfedora:~# systemctl list-jobs
JOB UNIT                                 TYPE  STATE  
341 systemd-update-utmp-runlevel.service start waiting
374 plymouth-quit-wait.service           start running
158 multi-user.target                    start waiting
157 graphical.target                     start waiting

plymouth-quit-wait.service and running are highlighted.

root@myfedora:~# systemctl status plymouth-quit-wait.service -n 10
● plymouth-quit-wait.service - Hold until boot process finishes up
     Loaded: loaded (/usr/lib/systemd/system/plymouth-quit-wait.service; static)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf
     Active: activating (start) since Mon 2025-08-11 18:21:14 CEST; 14min ago
        Job: 374
 Invocation: 9b0833bdd8f14c4fad8c9b9086b8115b
   Main PID: 1374 (plymouth)
      Tasks: 1 (limit: 7944)
     Memory: 224K (peak: 1.2M)
        CPU: 5ms
     CGroup: /system.slice/plymouth-quit-wait.service
             └─1374 /usr/bin/plymouth --wait

Aug 11 18:21:14 myfedora systemd[1]: Starting plymouth-quit-wait.service - Hold until boot process finishes up...

A system that expects to configure the graphical interface and cannot will always perform as you indicate when it is unable to properly configure that interface. No monitor attached means no display can be configured.
If you were to switch it to only configure the text interface it would properly complete the start up with no monitor.

The plymouth-quit-wait.service is responsible for providing the login screen after the boot process completes.

I see,
makes sense now :slight_smile: .

My goal is to have, lets call it “graphical server”, so it just have eth lan cable plugged in, but users can connect to it via RDP (which is available in Fedora).

So maybe I should configure myfedora somehow “special” and set another target as default, enable / disable some units, … ?

I wish to see if something is not OK only when it is indeed not ok.
Now fact that monitor is not plugged in is reported as not OK.

Attach the monitor for boot then disconnect it if desired after the system is booted/rebooted.

Nice :slight_smile:

But maybe

systemctl cancel 123         # 123 - is a job ID for plymouth-quit-wait.service

or

systemctl stop plymouth-quit-wait.service

?
Although it is still not elegant, not automatic and not what I want.

I have two more questions:

  • Why it affects multi-user.target ? I thought multi-user.target is “OS ready to operate in command line mode” target and has nothing to do with graphical target.
  • Can I disable plymouth-quit-wait.service, or replace it with something else permanently ? What consequences will it have ?

I removed rhgb quiet splash kernel parameters and set rd.plymouth=0 plymouth.enable=0 disablehooks=plymouth kernel parameters.

I do not know if all of this rd.plymouth=0 plymouth.enable=0 disablehooks=plymouthare necessary for Fedora, maybe just plymouth.enable=0 is enough ?

Also I ask for help here: Plymouth blocks multiuser.target, graphical.target - how to turn it off completely ?

Removing: rhgb splash and optional quiet,
and adding plymouth.enable=0 is enough.