When I ssh into my ubuntu-box running Hardy 8.04, the environment variables in my .bashrc are not set.
If I do a source .bashrc, the variables are properly set, and all is well.
How come .bashrc isn't run at login?
.bashrc is not sourced when you log in using SSH. You need to source it in your
.bash_profile like this:
if [ -f ~/.bashrc ]; then . ~/.bashrc fi
I had similar situation like Hobhouse. I wanted to use command
ssh myhost.com 'some_command'
and 'some_command' exists in '/var/some_location' so I tried to append '/var/some_location' in PATH environment by editing '$HOME/.bashrc'
but that wasn't working. because default .bashrc(Ubuntu 10.4 LTS) prevent from sourcing by code like below
# If not running interactively, don't do anything [ -z "$PS1" ] && return
so If you want to change environment for ssh non-login shell. you should add code above that line.