First of all it doesn't load my PS1. It just prompts me with a $The arrow keys instead of doing what they're supposed to do, the just echo things like: $ ^[[AAnd that makes it very unusable.A couple of things to consider here:This only happens when I login through ssh, it doesn't happen when I login directly to the server.One of the users works pretty fine even with ssh; and that's the user that was setup during the installation of the OS (ubuntu server 14.04).When I su - otherUser from within that user that works fine, everything works fine.Here's the .bashrc in case you want to take a look at it (It is the same on all users including the one that works correctly):function parse_git_branch () {  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'}RED=\[\033[0;31m\]YELLOW=\[\033[0;33m\]GREEN=\[\033[0;32m\]NO_COLOR=\[\033[0m\]#PS1=[\u@\h \W]\$export PS1=[\u@\h $YELLOW\W$NO_COLOR]$GREEN\$(parse_git_branch)$NO_COLOR\$ Here's an output log for when I try to login to the user the works properly ssh -vvv ubuntu@server: http://paste.ubuntu.com/15436267/Here's an output log for when I try to login to the user the doesn't work properly ssh -vvv adam@server: http://paste.ubuntu.com/15436301/
ssh login doesn't parse .profile or .bashrc properly and is generally being weird
ssh;login
The symptoms you describe (very basic prompt only, arrow keys don't work) are consistent with having /bin/sh as your login shell, rather than /bin/bash as expected. /bin/sh is a small shell designed to run scripts fast, not to be comfortable for interactive use.To check what your login shell is, rungetent passwd $USERThis displays a list of colon-separated fields, the login shell is the last one.If the login shell is not the one you want, run chsh -s /bin/bash.The reason you're getting bash in a terminal may be that somewhere in your configuration you're setting the SHELL environment variable to bash. Terminal emulators normally run the program indicated by SHELL, falling back to the login shell if SHELL is not set.