Manjaro boots to black screen but startx works

Hi all. As is convention, I’ll preface this by stating that I’m a linux newb.

As of yesterday, my Manjaro distribution no longer boots correctly. After selecting Manjaro in GRUB (I have Windows 10 installed on a separate drive), the system boots to a black screen with nothing but a cursor shown. Following the troubleshooting guide in the tutorials section of this website, I am able to run Manjaro as usual after opening a terminal and typing startx. As per said tutorial, it would seem this indicates I have an issue with my display manager.

Based on my searching, I conjecture that the display manager I am using is SDDM (I think this is the preinstalled DM for the Manjaro KDE distribution I installed). I’ve also looked on the Arch Wiki for SDDM, which under the heading “Blank screen with cursor, but no greeter shows” suggests I should check my disk space (which I have done - not an issue) or “switch to another TTY”. It’s at this point that I’ve got lost on the documentation trail and am quite far out of my depth.

Any support and/or links to relevant documentation would be much appreciated.


Potentially relevant cmd outputs following a fresh reboot and running startx.

The output of systemctl status display-manager.service is:

sddm.service - Simple Desktop Display Manager
     Loaded: loaded (/usr/lib/systemd/system/sddm.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2022-03-23 15:47:38 GMT; 1min 5s ago
       Docs: man:sddm(1)
             man:sddm.conf(5)
   Main PID: 531 (sddm)
      Tasks: 6 (limit: 9416)
     Memory: 71.7M
        CPU: 364ms
     CGroup: /system.slice/sddm.service
             ├─531 /usr/bin/sddm
             └─562 /usr/lib/Xorg -nolisten tcp -background none -seat seat0 vt1 -auth /var/run/sddm/{86a101b8>

Mar 23 15:47:40 ----- sddm-helper[570]: [PAM] Starting...
Mar 23 15:47:40 ----- sddm-helper[570]: [PAM] Authenticating...
Mar 23 15:47:40 ----- sddm-helper[570]: pam_faillock(sddm-autologin:auth): User unknown
Mar 23 15:47:40 ----- sddm-helper[570]: pam_kwallet5(sddm-autologin:auth): pam_kwallet5: pam_sm_authenticate
Mar 23 15:47:40 ----- sddm-helper[570]: pam_kwallet5(sddm-autologin:auth): pam_kwallet5: Couldn't get user i>
Mar 23 15:47:42 ----- sddm-helper[570]: [PAM] authenticate: Authentication failure
Mar 23 15:47:42 ----- sddm-helper[570]: [PAM] returning.
Mar 23 15:47:42 ----- sddm[531]: Authentication error: "Authentication failure"
Mar 23 15:47:42 ----- sddm-helper[570]: [PAM] Ended.
Mar 23 15:47:42 ----- sddm[531]: Auth: sddm-helper exited with 1

The output of systemctl status sddm.service is identical to above (I assume this indicates that SDDM is, in fact, the relevant display manager).

The command ls -l /etc/systemd/system/display-manager.service simply yields

lrwxrwxrwx 1 root root 36 Mar 16 00:30 /etc/systemd/system/display-manager.service -> /usr/lib/systemd/system/sddm.service

Manually restarting sddm kicks me back to the black screen that I get on boot.

Perhaps related to this issue?


What are the outputs of:

systemctl status display-manager.service

systemctl status sddm.service

ls -l /etc/systemd/system/display-manager.service

You said startx works. What about manually invoking:

systemctl restart sddm

The above steps should clue us in to the problem.

1 Like

I had an issue a short while ago - where my greeter theme caused a black screen.

The issue - to me - was the QML code used - I had to update the code to match the new qt libraries.

I cannot say your issue is the same - but you could try changing the theme in /etc/sddm.conf.

You can list available themes in /usr/share/sddm/themes - but the correct name you will have to extract from the themename/Metadata.desktop file

The Maldives theme is a fairly simple theme without heavy dependency on various plasma components.

2 Likes

Following a fresh reboot and running startx, the outputs are as follows.

The output of systemctl status display-manager.service is:

sddm.service - Simple Desktop Display Manager
     Loaded: loaded (/usr/lib/systemd/system/sddm.service; enabled; vendor preset: disabled)
     Active: active (running) since Wed 2022-03-23 15:47:38 GMT; 1min 5s ago
       Docs: man:sddm(1)
             man:sddm.conf(5)
   Main PID: 531 (sddm)
      Tasks: 6 (limit: 9416)
     Memory: 71.7M
        CPU: 364ms
     CGroup: /system.slice/sddm.service
             ├─531 /usr/bin/sddm
             └─562 /usr/lib/Xorg -nolisten tcp -background none -seat seat0 vt1 -auth /var/run/sddm/{86a101b8>

Mar 23 15:47:40 ----- sddm-helper[570]: [PAM] Starting...
Mar 23 15:47:40 ----- sddm-helper[570]: [PAM] Authenticating...
Mar 23 15:47:40 ----- sddm-helper[570]: pam_faillock(sddm-autologin:auth): User unknown
Mar 23 15:47:40 ----- sddm-helper[570]: pam_kwallet5(sddm-autologin:auth): pam_kwallet5: pam_sm_authenticate
Mar 23 15:47:40 ----- sddm-helper[570]: pam_kwallet5(sddm-autologin:auth): pam_kwallet5: Couldn't get user i>
Mar 23 15:47:42 ----- sddm-helper[570]: [PAM] authenticate: Authentication failure
Mar 23 15:47:42 ----- sddm-helper[570]: [PAM] returning.
Mar 23 15:47:42 ----- sddm[531]: Authentication error: "Authentication failure"
Mar 23 15:47:42 ----- sddm-helper[570]: [PAM] Ended.
Mar 23 15:47:42 ----- sddm[531]: Auth: sddm-helper exited with 1

The output of systemctl status sddm.service is identical to above (I assume this indicates that SDDM is, in fact, the relevant display manager).

The command ls -l /etc/systemd/system/display-manager.service simply yields

lrwxrwxrwx 1 root root 36 Mar 16 00:30 /etc/systemd/system/display-manager.service -> /usr/lib/systemd/system/sddm.service

Manually restarting sddm kicks me back to the black screen that I get on boot.

Then it’s likely not a service-related / symlink issue.

Did you try @linux-aarhus’s suggestion above (in regards to a theme issue?)

1 Like

Thanks for the suggestion. Unfortunately, changing the greeter theme in /etc/sddm.conf does not seem to fix the issue. I tried all preinstalled themes (breath, breeze, elarun, maldives, and maya) to no avail.

It’s because of your automated login. It tries to log in a user that doesn’t exist.

Try disabling this feature.

2 Likes

Aha, this fixed it!

For posterity: ultimately it seems the problem was because I had manually changed the username of my main account and had not been particularly thorough about it. As a result, the User option in /etc/sddm.conf was set to a non-existent username. Changing this User option to my new username fixed the issue.

It seems my bodge job of changing my username had unintended consequences - I suppose the lesson is to not mess with sudo if you don’t fully understand the operation of the commands you’re running. I guess I’ll be dealing with errors related to this for a while.

1 Like

You should have mentioned that from the start. :sweat_smile:

Anything that deviates away from default / standard settings should be mentioned. Otherwise, we go off on wild goose chases.

Especially considering the greeter / login is directly tethered to usernames.

1 Like

Absolutely - my bad. It hadn’t even crossed my mind - I naively assumed at the time that changing the username would just… work. I’ll be more careful in the future! (and more specific in any support requests).

Not sure if this is the right place to ask (given the topic is solved now), but is there anything else I should be cognizant of potentially breaking following my username change?

You could grep for your old username in /etc and possibly /usr and also your home directory.

There might be some leftovers.

2 Likes

Any scripts, launchers, menu items, etc, that use or reference the old absolute directory name of your home folder, such as:

/home/oldname

Applies to system-wide and custom made.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.