Most linux systems use bash shell. When you take terminal, what you do is run bash. To see version of bash, run
There are other shells, like dash, zsh, omyzsh available as replacement to bash.
View Shell You Are using
To view shell you are using, run
root@hon-vpn:~# echo $0 -bash root@hon-vpn:~# echo $SHELL /bin/bash root@hon-vpn:~#
Another method is to run
That shows PID of shell you are using. To find the program with the PID, run
ps -p "$$"
root@hon-vpn:~# ps -p "$$" PID TTY TIME CMD 4939 pts/1 00:00:00 bash root@hon-vpn:~#
Changing Shell Of A User
Shell of a user is set in /etc/passwd file. To see shell of user root, lets run
root@hon-vpn:~# cat /etc/passwd | grep root root:x:0:0:root:/root:/bin/bash root@hon-vpn:~#
We found user root have shell set to /bin/bash
To change a users shell, run
chsh USERNAME --shell /path/to/shell
Let say i want to set shell for user apache to /bin/bash, run
[root@server1 ~]# chsh apache --shell /bin/bash Changing shell for apache. Shell changed. [root@server1 ~]#
You can also change shell using usermod command.