No GUI after update

I have had problems with my NVIDIA GeForce GTX 650 Ti/PCIe/SSE2 card earlier. See here and here.

Today, I installed a large update and now the computer boots to a text console — TTY1.

I can do startx and Gnome starts as expected. There. are no errors reported on the console, just some warnings about keymaps.

inxi -G shows:


Graphics:
  Device-1: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics
    driver: i915 v: kernel
  Device-2: NVIDIA GK106 [GeForce GTX 650 Ti] driver: nvidia v: 470.103.01
  Display: server: X.org v: 1.21.1.3 driver: X: loaded: nvidia
    gpu: i915,nvidia resolution: 1920x1080~60Hz
  Message: Unable to show GL data. Required tool glxinfo missing.

mhwd -li shows:


> Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
     video-modesetting            2020.01.13                true            PCI
           video-linux            2018.05.04                true            PCI

I am able to launch nvidia-settings. It does not show any warnings, etc.

/etc/mkinitcpio.conf contains a line:

MODULES=""

/etc/modprobe.d/mhwd-gpu.conf contains:

blacklist nouveau
blacklist ttm
blacklist drm_kms_helper
blacklist drm

/etc/modules-load.d/mhwd-gpu.conf contains:

nvidia
nvidia-drm

cat /etc/modprobe.d/* gives:

blacklist nouveau
blacklist ttm
blacklist drm_kms_helper
blacklist drm

And cat /etc/modules-load.d/* gives:

vboxdrv
vboxnetadp
vboxnetflt
vboxdrv
vboxnetadp
vboxnetflt
vboxdrv
vboxnetadp
vboxnetflt
vboxdrv
vboxnetadp
vboxnetflt
##
## Generated by mhwd - Manjaro Hardware Detection
##
 
nvidia
nvidia-drm
# List of modules to load at boot

cat /etc/default/grub produces:

GRUB_DEFAULT=saved
GRUB_TIMEOUT=10
GRUB_TIMEOUT_STYLE=hidden
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="quiet cryptdevice=UUID=79706ea-ar5c-456f-a87a-45e42e0875f9:luks-56b706ea-ed5c-456f-a87a-45e42e0875f9 root=/dev/mapper/luks-56b706ea-ed5c-456f-a87a-45e42e0875f9 resume=/dev/mapper/luks-56b706ea-ed5c-456f-a87a-45e42e0875f9 apparmor=1 security=apparmor udev.log_priority=3"
GRUB_CMDLINE_LINUX=""

# If you want to enable the save default function, uncomment the following
# line, and set GRUB_DEFAULT to saved.
GRUB_SAVEDEFAULT=true

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable booting from LUKS encrypted devices
#GRUB_ENABLE_CRYPTODISK=y

# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console

# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command 'videoinfo'
GRUB_GFXMODE=auto

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper
# modes only.  Entries specified as foreground/background.
GRUB_COLOR_NORMAL="light-gray/black"
GRUB_COLOR_HIGHLIGHT="green/black"

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/usr/share/grub/background.png"
#GRUB_THEME="/path/to/gfxtheme"

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"
GRUB_ENABLE_CRYPTODISK=y

# Uncomment this option to enable os-prober execution in the grub-mkconfig command
GRUB_DISABLE_OS_PROBER=false

cat /etc/mkinitcpio.conf produces:

# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run.  Advanced users may wish to specify all system modules
# in this array.  For instance:
#     MODULES=(piix ide_disk reiserfs)
MODULES=""

# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image.  This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()

# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way.  This is useful for config files.
FILES="/crypto_keyfile.bin"

# HOOKS
# This is the most important setting in this file.  The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
##   This setup specifies all modules in the MODULES setting above.
##   No raid, lvm2, or encrypted root is needed.
#    HOOKS=(base)
#
##   This setup will autodetect all modules for your system and should
##   work as a sane default
#    HOOKS=(base udev autodetect block filesystems)
#
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS=(base udev block filesystems)
#
##   This setup assembles a pata mdadm array with an encrypted root FS.
##   Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
#    HOOKS=(base udev block mdadm encrypt filesystems)
#
##   This setup loads an lvm2 volume group on a usb device.
#    HOOKS=(base udev block lvm2 filesystems)
#
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr, fsck and shutdown hooks.
HOOKS="base udev autodetect modconf block keyboard keymap encrypt openswap resume filesystems"

# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"

# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()

journalctl --boot=0 --unit=gdm produces:

-- No entries --

And journalctl --boot=-1 --priority=3 --catalog produces:


Mar 12 18:53:33 efinso-desktop kernel: 
Mar 12 18:54:00 efinso-desktop systemd-xdg-autostart-generator[942]: /home/sandip/.config/autostart/copyq.desktop:181: Invalid value for boolean: False
Mar 12 18:54:54 efinso-desktop colord-sane[1500]: io/hpmud/pp.c 627: unable to read device-id ret=-1
Mar 12 18:55:02 efinso-desktop pulseaudio[1138]: GetManagedObjects() failed: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remot>
Mar 12 21:44:28 efinso-desktop systemd-cryptsetup[9342]: Device luks-56b706ea-ed5c-456f-a87a-45e42e0875f9 is still in use.
Mar 12 21:44:28 efinso-desktop systemd-cryptsetup[9342]: Failed to deactivate: Device or resource busy
Mar 12 21:44:28 efinso-desktop systemd-cryptsetup[9373]: device-mapper: remove ioctl on luks-6c57d658-460b-43b2-92bb-e214d043d2eb  failed: Device or resource busy
sudo mhwd-kernels -li

produces:

Currently running: 5.15.28-1-MANJARO (linux515)
The following kernels are installed in your system:
   * linux510
   * linux514
   * linux515
   * linux54

sudo mhwd -a pci nonfree 0300 produces:


> Using config 'video-hybrid-intel-nvidia-470xx-prime' for device: 0000:01:00.0 (0300:10de:11c6) Display controller nVidia Corporation GK106 [GeForce GTX 650 Ti]
> Using config 'video-hybrid-intel-nvidia-470xx-prime' for device: 0000:00:02.0 (0300:8086:0412) Display controller Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller
> Installing video-hybrid-intel-nvidia-470xx-prime...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/db/pci/graphic_drivers/hybrid-intel-nvidia-470xx-prime/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
:: Synchronizing package databases...
 core downloading...
 extra downloading...
 community downloading...
 multilib downloading...
warning: nvidia-470xx-utils-470.103.01-3 is up to date -- skipping
warning: libxnvctrl-470xx-470.103.01-1 is up to date -- skipping
warning: nvidia-prime-1.0-4 is up to date -- skipping
warning: lib32-nvidia-470xx-utils-470.103.01-1 is up to date -- skipping
warning: linux510-nvidia-470xx-470.103.01-12 is up to date -- skipping
error: target not found: linux514-nvidia-470xx
warning: linux515-nvidia-470xx-470.103.01-12 is up to date -- skipping
warning: linux54-nvidia-470xx-470.103.01-12 is up to date -- skipping
Error: pacman failed!
Error: script failed!

Please let me know if we need additional information.

So gdm would be failing to start…

journalctl --boot=0 --unit=gdm

@maycne.sonahoz Thanks. I have appended the output of the two commands to the question. But there is nothing suspicious there

open a terminal ( or TTY )

sudo mhwd-kernels -li
sudo mhwd -a pci nonfree 0300 

you have version nvidia drivers not 470 series drivers

@stephane Thanks.

sudo mhwd-kernels -li

produces:

Currently running: 5.15.28-1-MANJARO (linux515)
The following kernels are installed in your system:
   * linux510
   * linux514
   * linux515
   * linux54

sudo mhwd -a pci nonfree 0300 produces:


> Using config 'video-hybrid-intel-nvidia-470xx-prime' for device: 0000:01:00.0 (0300:10de:11c6) Display controller nVidia Corporation GK106 [GeForce GTX 650 Ti]
> Using config 'video-hybrid-intel-nvidia-470xx-prime' for device: 0000:00:02.0 (0300:8086:0412) Display controller Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller
> Installing video-hybrid-intel-nvidia-470xx-prime...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/db/pci/graphic_drivers/hybrid-intel-nvidia-470xx-prime/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
:: Synchronizing package databases...
 core downloading...
 extra downloading...
 community downloading...
 multilib downloading...
warning: nvidia-470xx-utils-470.103.01-3 is up to date -- skipping
warning: libxnvctrl-470xx-470.103.01-1 is up to date -- skipping
warning: nvidia-prime-1.0-4 is up to date -- skipping
warning: lib32-nvidia-470xx-utils-470.103.01-1 is up to date -- skipping
warning: linux510-nvidia-470xx-470.103.01-12 is up to date -- skipping
error: target not found: linux514-nvidia-470xx
warning: linux515-nvidia-470xx-470.103.01-12 is up to date -- skipping
warning: linux54-nvidia-470xx-470.103.01-12 is up to date -- skipping
Error: pacman failed!
Error: script failed!

Does this look suspicious?

The 5.14 kernel is EOL. Remove it and try again.

sudo mhwd-kernel -r linux514
sudo mhwd -a pci nonfree 0300

@maycne.sonahoz Thanks.

@stephane Thanks. Did that.

Still I boot into the text terminal. I am able to use startx to get GUI.

then try

sudo mkinitcpio -P
sudo update-grub

@stephane Thanks. I did that. But it is still not booting in the GUI.

What could it be?

What happens when you check (in TTY1) after the system boots,

systemctl status gdm

And then,

sudo systemctl restart gdm
1 Like

@winnie Thanks. We seem to be closer to the solution.

systemctl status gdm

in the TTY produces:

○ gdm.service - GNOME Display Manager
     Loaded: loaded (/usr/lib/systemd/system/gdm.service; disabled; vendor preset: disabled)
     Active: inactive (dead)

When I issue:

sudo systemctl restart gdm

in the TTY, the normal GUI login screen appears. I am able to login as usual, lock my session, etc.

If only it could happen on its own :slight_smile:

Re-enable the service, and see if that makes a difference:

sudo systemctl enable gdm
1 Like

@winnie Thanks. We are getting closer. But not there, yet.

sudo systemctl enable gdm

produces:

Failed to enable unit: File /etc/systemd/system/display-manager.service already exists and is a symlink to /usr/lib/systemd/system/gdm-plymouth.service.

gdm-plymouth ?

Isn’t that from the AUR?

display-manager.service should symlink to gdm.service. I’m not sure where gdm-plymouth.service came from, nor if you intentionally installed it from the AUR.


Straight from the PKGBUILD page, an important warning:

I would uninstall gdm-plymouth and force the reinstallation of gdm, then see if that resolves it.

That should do the trick.

However, If uninstalling gdm-plymouth and reinstalling gdm isn’t sufficient, then continue to proceed to “enable” gdm.service once again.


EDIT: If you absolutely need/want gdm-plymouth, then you need to manually break the current symlink to gdm-plymouth.service, and then (re-)create the proper symlink to gdm.service.

display-manager.servicegdm.service

2 Likes

@winnie Thanks. I have not done anything about gdm-plymouth knowingly.

After an update, it just stopped going to GUI and started showing me text console.

I have removed gdm-plymouth, reinstalled gdm. I did it from the GUI using ‘Add/Remove Software’.

But still I drop in to the text console. Enabling gdm produces the same error as earlier.

And no! I do not even know what gdm-plymouth is! So now do I need to

sudo ln -s /usr/lib/systemd/system/gdm.service /etc/systemd/system/display-manager.service

or am I writing it the other way round? :slight_smile:

Since gdm-plymouth conflicts with gdm, it might have been an unintentional issue created by the package managers upstream. (There’s no reason to use gdm-plymouth going forwards, apparently.)


First remove the improper symlink.

sudo rm -v /etc/systemd/system/display-manager.service

Then re-install gdm again, and hopefully it will correctly create the proper symlinks. If it does not, then do it manually yourself (your assumed command is correct.)

sudo ln -s /usr/lib/systemd/system/gdm.service /etc/systemd/system/display-manager.service

Then reload the systemd daemon and make sure to re-enable gdm.

sudo systemctl daemon-reload
sudo systemctl enable gdm

Now try rebooting.


This might have been caused by a recent update, but from now on you should be okay, as long as gdm-plymouth doesn’t get re-installed.


EDIT: Have fun, because another batch of Stable Updates have just been released! :open_mouth: Talk about timing!

3 Likes

@winnie Thanks. All is well. I am able to log back in to the GUI without having to do `startx’, etc.

1 Like

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