I recently upgraded my system from Linux Mint 18.3 to Linux Mint 19.

After upgrade I can't login to XFCE session. After entering password on the login screen, the screen goes black and a message is displayed:

 rc.local[1314]: Cannot open display "default display"

And then the login screen is displayed again.

Just booting in recovery mode works, but without proper graphics support. Also I can boot normally if I select Linux in GRUB menu, although the message above appears on system reboot. How can fix it, so I can login normally?

I've tried fiddling with default display settings /etc/init.d/lightdm, but it seems it doesn't have any impact on this issue.

EDIT: I found out that the message comes from /var/log/syslog:

systemd[1]: Started Network Manager Wait Online.

systemd[1]: Reached target Network is Online.

systemd[1]: Starting LSB: Start NTP daemon...

systemd[1]: Starting /etc/rc.local Compatibility...

systemd[1]: Starting LSB: disk temperature monitoring daemon...

systemd[1]: Starting LSB: Cisco AnyConnect Secure Mobility Client for Linux...

rc.local[1376]: Cannot open display "default display"

systemd[1]: rc-local.service: Control process exited, code=exited status=255

systemd[1]: rc-local.service: Failed with result 'exit-code'.

systemd[1]: Failed to start /etc/rc.local Compatibility.


This question made me learn a bit more about Linux internals. I found out that systemd runs rc.local for compatibility purposes and the topic from AskUbuntu community helped me debug rc.local.

I found out that the cause of the error message was the /etc/rc.local file, which was empty apart from the setxkbmap command which caused this message.

After commenting out this line the rc.local fails no more, but XFCE desktop fails to start anyway. I installed MATE and Cinnamon alongside and there seems to be no issues with them. Removing and installing XFCE didn't help, but that's of little concern to me as I can continue to use my system without any trouble.

The major lesson from it is that it may be safer to reinstall from scratch than to upgrade, but in case of not so critical system yoy may get away with upgrade with minor trouble.

The original question however is likely to remain unanswered.

  • Do you see any meaningful error messages in /var/log/Xorg.0.log or similar logfile?
    – AdminBee
    Feb 26, 2020 at 8:51
  • @AdminBee Yes, I found some logs, which added to the post.
    – Bord81
    Feb 26, 2020 at 8:55

1 Answer 1


EDIT I googled the last line of the logs and found this

How to Enable /etc/rc.local with Systemd

Copied from Shawn J. Goff

chvt allows you to change your virtual terminal.

From man chvt:

The command chvt N makes /dev/ttyN the foreground terminal. (The
corresponding screen is created if it did not exist yet. To get rid of
unused VTs, use deallocvt(1).) The key combination (Ctrl-)LeftAlt-FN
(with N in the range 1-12) usually has a similar effect.
  • It's not that I can't switch terminals, the problem is XFCE session doesn't start due to rc.local script failure.
    – Bord81
    Feb 26, 2020 at 9:57
  • Is there a way you can nano into the rc.local file. I believe it's in the etc folder. I think 1376 is the line at which the script fails.
    – Mark
    Feb 26, 2020 at 10:09
  • /etc/rc.local file is empty, there is another one in init.d, I guess, but it calls some other scripts, so there are a lot of scripts and nested calls.
    – Bord81
    Feb 26, 2020 at 10:14
  • I found another resource here. I recommend you check it out.
    – Mark
    Feb 26, 2020 at 10:29

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .