Solved. I'm not sure if anybody felt the answer was too obvious - if so I 
apologise. But it's not an answer I came across anywhere else and shells don't 
work the way I thought they did. 

The problem was a simple error in /etc/passwd - my userid didn't have the 
default shell specified (/bin/bash at the end of the line) so the login 
defaulted to the default of /bin/sh. No idea how that happened. 
/etc/default/useradd look fine. 

But /bin/sh is just a symlink to /bin/bash, the same binary runs. I didn't 
think of this straight away because I knew bash was the only shell I had 
installed, and I thought from my reading that "bash + login = ~/.bash_profile 
gets read"

Would be grateful if someone could confirm or correct my new set of assumptions:

1. SHELL variable gets set in /etc/passwd

2. Whether ~/.bash_profile (or ~/.bashrc for that matter) get sourced depends 
on what $SHELL is, not whether the running shell is actually bash or not. 

I'm leaving X right out of it now - just talking about console login

Thanks
David
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to