Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

All of a sudden, I am no longer able to login to an X session in my Xubuntu 13.04 install. The graphical login accepts my password, the screen goes blank and then returns to the login prompt. A bit of Googling tells me that this isn't an uncommon problem, but all the advice I've read so far hasn't worked:

  • I can login to the guest account, so the login manager is working.
  • I can login to my account via tty or ssh, so my account isn't locked.
  • I can start applications through an X tunnel (XMing+PuTTY), if that's relevant.
  • There's masses of disk space left.
  • My ~/.Xauthority is owned by me, rather than root.
  • There's no reference to ~/.ICEauthority in my logs and the file is otherwise owned by me.
  • /var/log/Xorg.0.log looks OK(ish): There are a few warnings about missing fonts and complaints about psb. Apparently that's the video driver (my laptop uses Intel GMA500) and there are similar complaints later in the file, however it ultimately settles on something. After all, the display is clearly working at the login screen (as it is for the guest account).
  • There are some errors and permission complaints in ~/.xsession-errors, but I'm not sure if they're relevant:

    ERROR:root:Could not find any typelib for Dbusmenu
    ERROR:root:Could not find any typelib for Unity
    ...
    ###!!! [Parent][RPCChannel] Error: Channel error: cannot send/recv
    ...
    debconf: DbDriver "passwords" warning: could not open /var/cache/debconf/passwords.dat: Permission denied
    
  • I tried dpkg-reconfigure xubuntu-desktop and apt-get -y install xubuntu-desktop to try refreshing/reinstalling, but neither option seemed to do anything.

Therefore, I'm kind of at a loss! So any ideas would be most appreciated!

share|improve this question
    
Something changed the owner of .Xauthority to root while I was playing with xrdp, xfreerdp, and vino. Thanks for listing your steps! –  Iain Elder Apr 2 at 1:22

3 Answers 3

I had the same problem, but none of the above worked for me. The solution i found, was to delete a curropted file i had on desktop (in console mode) and then i could make login normal again.

share|improve this answer
    
AU values and encourages high-quality answers. As it stands, your answer is not very useful, because a reader cannot understand how to identify such a “corrupted file”. To improve your answer can you please describe, what you did exactly? –  David Foerster Oct 30 at 18:29

In my case login was possible again after removing $HOME/.Xauthority :

  1. Press <ALT-Control-F1> and you get an ASCII login. Enter username and password.
  2. Type rm .Xauthority. Then you can go back to the graphical login screen by pressing <ALT-Control-F7>.

After taking a closer look it appears that the contents of .Xauthority are destroyed by sshd when login in from a remote machine:

before ssh-ing from a remote machine:

ls -l .Xauthority

rw------- 1 ubuntu ubuntu 50 Nov 24 18:46 .Xauthority

after ssh-ing from a remote machine:

ls -l .Xauthority

-rw------- 1 ubuntu ubuntu 101 Nov 24 19:22 .Xauthority

What can be seen is that the file has an odd number of bytes after the ssh-login.

Maybe there are more programs besides sshd that damage .Xauthority.

share|improve this answer
up vote 1 down vote accepted

The following solved the problem:

mv ~/.config ~/.config.old

So it looks like the problem was with some desktop setting, somewhere.

Now, of course, my desktop is reset for apparently no good reason. Is there an easy way to find the corrupted config file(s)?

share|improve this answer
3  
I had this problem with new Xubuntu 13.10 after unplugging a second display at my Laptops vga-out and restarting. In my case rm ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml did it! –  elf12 Nov 6 '13 at 12:59
    
Just to confirm: I had the same problem as elf12, and the command given worked for me. However, through some weird trick of my browser, it looked like there was a space in the command right after the 'l' of channel. So, note to users of this command: there are no spaces after the 'rm'! I recommend putting this command into your ~ folder as a bash shell script, so it's easy to ctl-alt-f1 into the cli, execute the bash shell script, and then ctl-alt-f7 back into the gui. –  Adrian Keister Jan 14 at 14:34

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.