Use su <user>, optionally with the - option (also known as -l or --login) to make the shell behave as a login shell (different initialization).
You can't really send it to background, since the shell of that user catches the SIGTSTP signal that is used to move it to background and exits (usually). Instead of that you might be interested in a terminal multiplexer like tmux or screen
You might also want to use vlock on the consoles when you are not using them for longer time.
I'm not sure how standard it is, but at least in Ubuntu systems sudo sets the following environment variables (among others - see the ENVIRONMENT section of the sudo manpage):
SUDO_UID Set to the user ID of the user who invoked sudo
SUDO_USER Set to the login of the user who invoked sudo
for example,
steeldriver@lap-t61p:~$ sudo sh -c 'whoami'
root
steeldriver@lap-t61p:~$ sudo sh -c 'echo $SUDO_USER'
steeldriver
Best Answer
You guessed it,
users
,who
andw
fundamentally do the same thing and just differ by their options and the formatting of their output.