Well, I figured out why according to /var/log/lightdm/lightdm.log
:
DEBUG: Failed to load session file /usr/share/xsessions/ubuntu.desktop
DEBUG: Session 1800: Sending SIGTERM
Started seesion 2020 with service 'lightdm', username 'lightdm'
DEBUG: Session 2020 authentication complete with return value 0: Success
DEBUG: Greeter authorized
DEBUG: Logging to /var/log/lightdm/x-0-greeter.log
DEUBG: Failed to load session file /usr/share/xgreeters/default.desktop: No such file or directory
DEBUG: Greeter failed to start
DEBUG: Stopping display
There was something wrong with /etc/lightdm/lightdm.conf
. I changed it to:
[SeatDefaults]
user-session=xubuntu
greeter-session=lightdm-gtk-greeter
autologin-user=ubuntu
autologin-timeout=0
This forced it to use xubuntu.desktop
and lightdm-gtk-greeter.desktop
instead of ubuntu.desktop
and default.desktop
, which do not exist and will cause failure.
Yeah, Nvidia has been a nightmare for some of us this time around. I had no luck whatsoever with the 295 drivers on my GeForce 6150. You could try updating to the latest drivers though...
sudo apt-get install nvidia-current
If that doesn't work, try the updated drivers:
sudo apt-get install nvidia-current-updates
If it still doesn't work, remove both the nvidia driver modules and update the generic nouveau driver:
sudo apt-get remove nvidia-current nvidia-current-updates
sudo apt-get install xserver-xorg-video-nouveau
I've found the nouveau driver pretty good, and certainly a lot more solid and reliable than the nvidia drivers on this card, as well as reasonably fast. I haven't been game to try the latest nvidia driver available now - 305 or something I think - Why fix it when it's not broken?. Maybe when I have some spare time...
If you manage to get the Nividia drivers working, you might be able to set the resolutions you want using the Nvidia settings tool:
sudo apt-get install nvidia-settings
This tool takes over from the generic display settings in Ubuntu, and knows more about the card capabilities.
I note that some of the older drivers have been put back into the repository. They were missing when 12.04 was first released. I'm not sure that they will help you but if you want to try the older stable drivers they are nvidia-96 and nvidia-173
Best Answer
This is probably a bug, but the workarounds for this sort of problem are generic, and applying the workaround will help in reporting the bug initially. (So while most bug questions are closed as off-topic, I'm answering this one with a workaround. Also, I suppose it's possible that this could happen as the result of some misconfiguration, rather than bug.)
How to Get a Successful GUI Login as "Fred Hamilton"
Press Ctrl+Alt+F1 to open a text-based virtual console. Log in with Fred Hamilton's username and password. But take note:
The username will not actually be
Fred Hamilton
. It will be the short name. (You may recall having put in both a short username and a full name, when you installed Ubuntu.) If you don't remember what this is, it's probablyfred
. But some users make their initials (for example, mine isek
), or something entirely different.If you don't know what this is, you can log in as Guest, and try to see what subfolders exist inside the
/home
folder. These subfolders are the folders for each human, non-guest user (so there's probably just one--the one for Fred Hamilton).Unlike when logging in graphically, nothing will change on the screen as you type in your password. You won't see any placeholder characters like
*
. This is by design. Just type in your password and press Enter.Now you can run commands. Make sure you're connected to the Internet (you can connect in a simultaneous guest session if necessary, switching to the GUI with Alt+F7 and back to the first virtual console with Ctrl+Alt+F1). Run this command, by typing it in and pressing Enter.
This will install
gdm
, an alternative tolightdm
. LightDM and GDM are two different display managers. A display manager is the part of the GUI that provides the graphical login screen. Since the LightDM login screen is not working, installing GDM and configuring it to be used instead of LightDM should eliminate the problem.Please note:
You'll be prompted for your password. As you enter it, you won't see anything change (as before).
As the final installation step, the
gdm
package will be configured and you'll get to choose whether you want to use LightDM or GDM as your display manager. Choose GDM. You can use the arrow keys and the Enter key to make this selection, when the menu comes up asking you which you want to use.gdm
, as you'll be manually switching to it anyway. But LightDM (which is currently broken and causing this problem) will continue giving you the bad login screen, unless you select GDM. You can always reconfigure this later, withsudo dpkg-reconfigure gdm
orsudo dpkg-reconfigure lightdm
.Then stop
lightdm
and startgdm
:Now switch back to the GUI (Alt+F7) and log in as Fred Hamilton.
How to Report This As a Bug
First, read the official bug reporting instructions for Ubuntu carefully. (The answers here are also a helpful resource.)
Then report this bug against the
lightdm
package in Ubuntu, by pressing Alt+F2 and running the commandubuntu-bug lightdm
.Here are a couple of specific considerations, when writing your bug report:
Make sure to describe the problem in detail. In particular, developers should not have to come here, to fully understand and appreciate the bug you're reporting.
Make sure that an
Xorg.0.log
file created from a LightDM session (not from the current GDM session) is attached.Xorg.0.log
andXorg.0.log.old
will usually be attached automatically, andXorg.0.log.old
will likely be the correct file. If you're at all unsure, you can also attach theXorg.0.log
file you currently have, if you made a copy of it before logging in again. (Just make sure to give it a description that makes clear what the difference is between it and theXorg.0.log
file automatically attached.)In case somehow this is not a bug, you might also want to paste the contents of the appropriate
Xorg.0.log
file at http://paste.ubuntu.com and edit your question here (or post a comment) to provide a link to it.This question might be considered a duplicate of this older question. (Thanks to aking1012 for finding that.) If so, and this is closed as a duplicate of that question, this answer can probably be merged, and then I can edit accordingly.