Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
can't log in as normal user
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
Timmer
Guru
Guru


Joined: 24 Aug 2004
Posts: 373
Location: Duluth, MN, USA

PostPosted: Tue Jun 03, 2008 2:43 am    Post subject: can't log in as normal user Reply with quote

I seem to be having a permissions problem, but I'm not sure where, so I'm hoping someone can help me out.

I've been away for the last month, and just got done doing a farmload of updates including kde-4.0.4. Unfortunately there were a bunch (300+) so it's hard to narrow down what the problem might be. Or it might be a red herring.

Anyway, if I log in from kdm (3.5 or 4.0 -- they behave the same):
logging into kde-3.5 - screen just hangs. ctrl-alt-bksp
logging into xfce same as above
logging into kde-4 - loading splash comes up with the blinking hard drive and then I get an error in an X dialog;
"Call to lnusertemp failed (temporary directories full?). Check your installation."
After I click Okay, it sends me back to the log in screen.

Logging in from xdm as user, just sends me straight back to xdm
Logging in from xdm as root works just fine - sends me to an X session

Logging in from the terminal as user I get "-bash: /dev/null: Permission denied" If I ^C then it stops and I get a normal prompt and things seem to work fine.
Logging in from the terminal as root works just fine

Logging in from kdm as root isn't possible. kdm is too smart for it's own good.

ooh, wait. I just noticed something new too. /proc, /sys, /dev, /dev/shm, and /dev/pts are all getting mounted before /. Is that normal?

[Edit: nevermind, that mount order is fine and normal. or at least my laptop does it that way too]


Last edited by Timmer on Tue Jun 03, 2008 5:08 am; edited 1 time in total
Back to top
View user's profile Send private message
makton3g
Tux's lil' helper
Tux's lil' helper


Joined: 19 Aug 2004
Posts: 88

PostPosted: Tue Jun 03, 2008 2:56 am    Post subject: Reply with quote

did you do an

Code:

env-update
source /etc/profile


When you in root? Try that.
I would have to watch my laptop boot to verify the mounts at boot. the laptop is a fresh install from few days ago.
Back to top
View user's profile Send private message
Timmer
Guru
Guru


Joined: 24 Aug 2004
Posts: 373
Location: Duluth, MN, USA

PostPosted: Tue Jun 03, 2008 3:05 am    Post subject: Reply with quote

That didn't do it. Same behaviors as before.

But thanks for the quick suggestion.
Back to top
View user's profile Send private message
Timmer
Guru
Guru


Joined: 24 Aug 2004
Posts: 373
Location: Duluth, MN, USA

PostPosted: Tue Jun 03, 2008 4:53 pm    Post subject: Reply with quote

I found a thread on LinuxForums that suggests a few things. I'll have to check them when I get home, but the possibilities are lost ownership of ~, or an /etc/passwd file that's not world readable.

I'll post back if either of those resolve this.
Back to top
View user's profile Send private message
Timmer
Guru
Guru


Joined: 24 Aug 2004
Posts: 373
Location: Duluth, MN, USA

PostPosted: Tue Jun 03, 2008 9:54 pm    Post subject: Reply with quote

Those weren't my problem. Turns out that /dev/null had the wrong permissions some how. They got set to 700 instead of 666.
Back to top
View user's profile Send private message
Ryhajlo
n00b
n00b


Joined: 08 Oct 2007
Posts: 31

PostPosted: Wed Jun 04, 2008 6:32 am    Post subject: Reply with quote

I had a similar problem last summer and after battling it for weeks I just created a new user account and used root to transfer my important stuff over. But that is a last resort, sorry I dont have a better solution, but someone probably does :)
Back to top
View user's profile Send private message
Stolz
Moderator
Moderator


Joined: 19 Oct 2003
Posts: 3028
Location: Hong Kong

PostPosted: Tue Jul 29, 2008 4:31 pm    Post subject: Reply with quote

Just reporting for users that get here via the search option:

I was having the same issue in a fresh new installed box. The first time I log in into KDE-4 there is no problem, but next attemps I allways get the message:

Call to lnusertemp failed (temporary directories full?). Check your installation?

After researching a bit, I found out the cause and the solution that works for me. If you look at the startkde script (/usr/kde/kde_version/bin/startkde) you will find this piece of code:
Code:

# Link "tmp" "socket" and "cache" resources to directory in /tmp
# Creates:
# - a directory /tmp/kde-$USER and links $KDEHOME/tmp-$HOSTNAME to it.
# - a directory /tmp/ksocket-$USER and links $KDEHOME/socket-$HOSTNAME to it.
# - a directory /var/tmp/kdecache-$USER and links $KDEHOME/cache-$HOSTNAME to it.
# Note: temporary locations can be overriden through the KDETMP and KDEVARTMP
# environment variables
for resource in tmp cache socket; do
    if ! "$lnusertemp" $resource >/dev/null; then
        echo 'startkde: Call to lnusertemp failed (temporary directories full?). Check your installation?.'  1>&2
        test -n "$ksplash_pid" && kill "$ksplash_pid" 2>/dev/null
        xmessage -geometry 600x100 "Call to lnusertemp failed (temporary directories full?). Check your installation?"
        exit 1
    fi
done


This loop calls the lnusertemp executable which (I guess) is in charge of creating or checking the temporaly direcotries and files structure that a KDE user session needs. In my case the problem was lnusertemp spects /var/tmp to be a directory but in my system /var/tmp is a symbolic link pointing to /tmp
Code:
 $ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/hda3             5.7G   38M  5.4G   1% /tmp

$ ls -ld /var/tmp
drwxrwxrwt 3 root root 4,0K jul 29 16:26 /var/tmp/ -> /tmp/var_tmp

$ ls -d /tmp/
drwxrwxrwt 9 root root 4,0K jul 29 16:32 /tmp/

$ ls -d /tmp/var_tmp
drwxrwxrwt 4 root root 4,0K jul 29 17:54 /tmp/var_tmp


The solution is now obvious, you only have to bypass the check that fails in you case. In my case it can be acomplished in several manners. I can comment the "exit 1" and "xmessage..." lines, or remove the word cache from "for resource in tmp cache socket; do", etc...

Note in my case the workaround is not dangerous because althought /var/tmp/ is a not a directory, it points to a valid directory but in other cases, cosider the consecuences of removing a checkpoint from the script becasue if it fails there should be a good reason for it.

Hope it helps
Back to top
View user's profile Send private message
lamawithonel
n00b
n00b


Joined: 09 Apr 2008
Posts: 14

PostPosted: Sun Aug 10, 2008 1:44 am    Post subject: Reply with quote

^^^^^^^^^^^^^^^

A better fix is explained in the comments using the environmental variables ${KDETMP} and ${KDEVARTMP}.

Code:
# Note: temporary locations can be overriden through the KDETMP and KDEVARTMP
# environment variables


All you have to do is add something like this to the top of the file:

Code:
export KDETMP=/mnt/var/tmp
export KDEVARTMP=/mnt/var/var/tmp


This is an example from my system where I've symlinked /tmp and /var to a partition mounted at /mnt/var. Whatever directories you decide to use, all you have to do is replace the values with the fully-qualified path names.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum