Latest update broke graphical login

I got an old ThinkPad Z60m out of the drawer, run an update on the installed 13.1 (some 500MB - last update was some time ago - graphical login is not working any longer. It is stuck at

2016-10-28T11:47:10.881583+02:00 Z60 systemd[1]: Starting Graphical Interface.
2016-10-28T11:47:10.888012+02:00 Z60 systemd[1]: Reached target Graphical Interface.
…but no graphical login comes up.

The rest from the /var/log/messages does not tell me too much with regard to this issue:

2016-10-28T11:47:10.881583+02:00 Z60 systemd[1]: Starting Graphical Interface.
2016-10-28T11:47:10.888012+02:00 Z60 systemd[1]: Reached target Graphical Interface.
2016-10-28T11:47:10.893618+02:00 Z60 systemd[1]: Starting Stop Read-Ahead Data Collection 10s After Completed Startup.
2016-10-28T11:47:10.896837+02:00 Z60 systemd[1]: Started Stop Read-Ahead Data Collection 10s After Completed Startup.
2016-10-28T11:47:10.906509+02:00 Z60 systemd[1]: Starting Update UTMP about System Runlevel Changes…
2016-10-28T11:47:10.921473+02:00 Z60 systemd[1]: Started Update UTMP about System Runlevel Changes.
2016-10-28T11:47:10.935072+02:00 Z60 systemd[1]: Startup finished in 13.092s (kernel) + 22.798s (userspace) = 35.891s.
2016-10-28T11:47:15.916961+02:00 Z60 kernel: 40.872436] lib80211_crypt: registered algorithm ‘CCMP’
2016-10-28T11:47:15.923906+02:00 Z60 kernel: 40.879228] lib80211_crypt: registered algorithm ‘TKIP’
2016-10-28T11:47:16.157378+02:00 Z60 dhclient[1035]: Internet Systems Consortium DHCP Client 4.2.5-P1
2016-10-28T11:47:16.158317+02:00 Z60 dhclient[1035]: Copyright 2004-2013 Internet Systems Consortium.
2016-10-28T11:47:16.158670+02:00 Z60 dhclient[1035]: All rights reserved.
2016-10-28T11:47:16.159010+02:00 Z60 dhclient[1035]: For info, please visit https://www.isc.org/software/dhcp/
2016-10-28T11:47:16.159335+02:00 Z60 dhclient[1035]:
2016-10-28T11:47:16.214188+02:00 Z60 dhclient[1035]: Listening on LPF/eth1/00:13:ce:c7:09:dd
2016-10-28T11:47:16.215831+02:00 Z60 dhclient[1035]: Sending on LPF/eth1/00:13:ce:c7:09:dd
2016-10-28T11:47:16.216731+02:00 Z60 dhclient[1035]: Sending on Socket/fallback
2016-10-28T11:47:16.217568+02:00 Z60 dhclient[1035]: DHCPREQUEST on eth1 to 255.255.255.255 port 67
2016-10-28T11:47:16.220535+02:00 Z60 dhclient[1035]: DHCPACK from 192.168.2.1
2016-10-28T11:47:16.235284+02:00 Z60 dhclient[1035]: bound to 192.168.2.111 – renewal in 40093 seconds.
2016-10-28T11:47:16.235994+02:00 Z60 avahi-daemon[655]: Joining mDNS multicast group on interface eth1.IPv4 with address 192.168.2.111.
2016-10-28T11:47:16.236712+02:00 Z60 avahi-daemon[655]: New relevant interface eth1.IPv4 for mDNS.
2016-10-28T11:47:16.237221+02:00 Z60 avahi-daemon[655]: Registering new address record for 192.168.2.111 on eth1.IPv4.
2016-10-28T11:47:17.326244+02:00 Z60 dbus[653]: [system] Activating via systemd: service name=‘org.freedesktop.nm_dispatcher’ unit=‘dbus-org.freedesktop.nm-dispatcher.service’
2016-10-28T11:47:17.327694+02:00 Z60 dbus[653]: [system] Activation via systemd failed for unit ‘dbus-org.freedesktop.nm-dispatcher.service’: Unit dbus-org.freedesktop.nm-dispatcher.service failed to load: No such file or directory.
2016-10-28T11:47:24.001557+02:00 Z60 kernel: 48.957593] nf_conntrack: automatic helper assignment is deprecated and it will be removed soon. Use the iptables CT target to attach helpers instead.
2016-10-28T11:47:41.045423+02:00 Z60 systemd[1]: Starting Stop Read-Ahead Data Collection…
2016-10-28T11:47:41.057079+02:00 Z60 systemd[1]: Started Stop Read-Ahead Data Collection.
2016-10-28T11:48:09.643541+02:00 Z60 systemd[1]: Received SIGINT.

-> I rebooted here

when booting into console and running startx it works as normal.
No unususal messages in /var/log/Xorg.0.log*
systemctl status default.target
gives:
● graphical.target - Graphical Interface
-> so this should be OK as well

Any idea what this could be ? Or even better, how to fix?

What does “systemctl status xdm.service” say?
Does “systemctl restart xdm.service” get you to a graphical login?

Status query can only be run once you are logged in via terminal session - in this case it claims that requirement (X-Windows running) is not fulfilled.
Restarting the service from the command line brings up the graphical login screen - but after login it flickers shortly and returns immediately to the login screen…

Yes, of course.
I thought that would be obvious… :wink:

  • in this case it claims that requirement (X-Windows running) is not fulfilled.

It’s unlikely X-Windows that’s not fulfilled, it should start it itself.

Can you please provide the actual output?

But I guess it is the remote-fs.service dependency that’s not fulfilled.
Probably some network share in /etc/fstab that cannot be mounted?

Restarting the service from the command line brings up the graphical login screen - but after login it flickers shortly and returns immediately to the login screen…

Well, that’s a different problem then.
Try to select a different session at the login screen (IceWM should be installed in any case), does login work then?

Please show us output of

zypper lr -d

And, do Ctrl-Alt-F2, login with username and password, and run

dmesg -w

, make the login screen crash and look at the output in the VT.

Well, it seems the user session is “crashing” (not the login screen), not sure if anything will show up in dmesg then.
~/.xsession-errors-:0 would probably be more interesting… :wink:

I would still try to login to IceWM instead, and if it works try to run the crashing desktop there and post the output (~/.xsession-errors-:0 gets recreated from scratch at login).
E.g. “startkde” or “plasma-desktop” in the case of KDE.
Or which desktop are you trying to login to?

Thanks for the hints, gents!
So I tried xdm and ICE WM, and I could log in at least
I tried then changing to kdm and plasma-desktop (tried kde-plasma / kde / kde4 as well) - session crashed.
Here is the xsession-errors (user root and startx):

/etc/X11/xim: Checking whether an input method should be started.
sourcing /etc/sysconfig/language to get the value of INPUT_METHOD
INPUT_METHOD is not set or empty (no user selected input method).
Trying to start a default input method for the locale de_DE.UTF-8 ...
Checking for a default input method in /etc/X11/xim.d/de/
sourcing /etc/X11/xim.d/de/40-ibus ...
/etc/X11/xim.d/de/40-ibus started sucessfully
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
kbuildsycoca4 running...
QDBusObjectPath: invalid path ""
QDBusConnection: name 'org.kde.kglobalaccel' had owner '' but we thought it was ':1.15'
plasma-desktop(2116)/plasma DefaultDesktop::DefaultDesktop: !!! loading desktop 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: got QRectF(0,0 1680x1050) 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: !!!!!!!!!!!!! workingGeom is QRectF(0,0 1680x1050) 
plasma-desktop(2116)/plasma Panel::updateBorders: 0 -1 0 QRectF(10206,-206 200x200) 
plasma-desktop(2116)/plasma Panel::updateBorders: 6 4 6 6 
plasma-desktop(2116)/plasma Panel::setFormFactorFromLocation: setting horizontal form factor 
plasma-desktop(2116)/libplasma Plasma::isPluginVersionCompatible: unversioned plugin detected, may result in instability 
plasma-desktop(2116)/plasma Panel::updateSize: updateSze  true 0 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: got QRectF(0,0 1680x1050) 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: !!!!!!!!!!!!! workingGeom is QRectF(0,0 1680x1050) 
QFileSystemWatcher: failed to add paths: /root/.kde4/share/config/activitymanager-pluginsrc
plasma-desktop(2116)/libplasma Plasma::isPluginVersionCompatible: unversioned plugin detected, may result in instability 
plasma-desktop(2116)/plasma DefaultDesktop::DefaultDesktop: !!! loading desktop 
plasma-desktop(2116)/libplasma Plasma::isPluginVersionCompatible: unversioned plugin detected, may result in instability 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: defaults due to no screen; got: QRectF(0,0 800x600) 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: !!!!!!!!!!!!! workingGeom is QRectF(0,0 800x600) 
plasma-desktop(2116)/libplasma Plasma::isPluginVersionCompatible: unversioned plugin detected, may result in instability 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: defaults due to no screen; got: QRectF(0,0 800x600) 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: !!!!!!!!!!!!! workingGeom is QRectF(0,0 800x600) 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: got QRectF(0,0 1680x1050) 
plasma-desktop(2116)/plasma DefaultDesktop::refreshWorkingArea: !!!!!!!!!!!!! workingGeom is QRectF(0,0 1680x1050) 
========================>  7 0
kded4: Fatal IO error: client killed
kdeinit4: Fatal IO error: client killed
klauncher: Exiting on signal 15
kdeinit4: Fatal IO error: client killed
kactivitymanagerd: Fatal IO error: client killed
QString::arg: Argument missing: , 91232a3f-0e8d-4812-aad9-e5863b063f78
QString::arg: Argument missing: "" , 2016 
QString::arg: Argument missing: "" , 45 
QString::arg: Argument missing: , 
QString::arg: Argument missing: , 91232a3f-0e8d-4812-aad9-e5863b063f78
QString::arg: Argument missing: "" , 2016 
QString::arg: Argument missing: "" , 45 
QString::arg: Argument missing: , 
QString::arg: Argument missing: , 91232a3f-0e8d-4812-aad9-e5863b063f78
QString::arg: Argument missing: "" , 2016 
QString::arg: Argument missing: "" , 11 
QString::arg: Argument missing: , 
QString::arg: Argument missing: , 91232a3f-0e8d-4812-aad9-e5863b063f78
QString::arg: Argument missing: "" , 2016 
QString::arg: Argument missing: "" , 11 
QString::arg: Argument missing: , 
QString::arg: Argument missing: , 5ef16603-4f7b-4ba7-9684-2051318f8437
QString::arg: Argument missing: , 
QString::arg: Argument missing: "" , 1478621860526 
QString::arg: Argument missing: "" , 1 
QString::arg: Argument missing: "" , 5 
QString::arg: Argument missing: , 20
QString::arg: Argument missing: , 
QString::arg: Argument missing: "" , 1 
QString::arg: Argument missing: "" , 5 
QString::arg: Argument missing: , 20
QString::arg: Argument missing: , 
kglobalaccel: Fatal IO error: client killed
static bool QDeclarativeMetaType::isModule(const QByteArray&, int, int) Qt 4.7 import detected; please note that Qt 4.7 is directly reusable as QtQuick 1.x with no code changes. Continuing, but startup time will be slower. 
plasma-desktop: Fatal IO error: client killed

It should be “kde-plasma”.

Here is the xsession-errors (user root and startx):

kded4: Fatal IO error: client killed
kdeinit4: Fatal IO error: client killed
klauncher: Exiting on signal 15
kdeinit4: Fatal IO error: client killed
kactivitymanagerd: Fatal IO error: client killed
...
kglobalaccel: Fatal IO error: client killed
...
plasma-desktop: Fatal IO error: client killed

Hm, this doesn’t sound good (the rest is irrelevant).
Can you please post the output of “df -h” and “mount”?
And the /etc/fstab please.

May be related to the fact that you used “startx” though, that’s not supported any more since years and may cause permission problems.

So please also try to run “plasma-desktop” in an xterm or konsole inside IceWM (when logged in normally via the login screen) and post the output.
Maybe it provides more clues.

Hi Wolfgang,

after some more playing around it pointed out that the failed NFS-mount was the root-cause for the problem. This is strange, as this **did not **cause a problem in earlier times.
After commenting out and having verified kdm/kde-plasma is set everything worked like expected.
Thanks to you and Knurpht for the support.

Anyway, a failed NFS should never break a graphical login , should it?

Well, that depends.
If an important system partition is mounted via NFS, of course it is expected to break a graphical login (or even the boot completely).
And the graphical system (xdm.service) does have a dependency on $remote-fs.service, i.e. it will not start if a network mount fails.
That’s a legacy thing AFAIK (related to /usr maybe being mounted via NFS), and has been removed in later versions IIANM.

For vital directories I can understand this fully, but in this case it is just a data directory that is mounted.
Of course, xdm.service can not know this.
I will check for an option to make the dependency optional.
Thanks!

Well, it’s not really xdm.service, but systemd… :wink:

xdm.service only specifies that it requires $remote-fs.service though, as there is no way to do that more fine-grained, especially so that it works in every possible situation…

I will check for an option to make the dependency optional.

nofail?

Or use autofs to mount the NFS share (on first access) instead of fstab.