Login as non-root user in terminal
To which user you want to change to?
The problem is that you are trying to "su" into a user that does not have a shell assigned to it. Most of the users such as mysql, pulse, etc, created by the system or by some packages when you install software does not have a shell assigned.
You can check if a user has a shell assigned by looking into the /etc/passwd
file, just look at the end of the line of each user, if it says /bin/false
it means that it does not have a shell assigned, if it has something like /bin/bash
or any other shell, then you should be able to "su" into that user.
When i say "shell assigned" it basically means that it has "shell access"
still if the user does not have shell access, you can always execute commands as that user with
sudo -u user command
if you have sudo access then I would recommend
sudo su username -
It does basically the same thing, but only requires you to know your password not the other users.
however if you have the other users password:
su username -
should work just fine.
notice the 1 - and that it's at the end.