Le fichier /etc/shells les chemins complets de tous les shells de connexion disponibles sur le système. Ainsi, pour définir le shell particulier, l'entrée du shell doit être présente dans le fichier /etc/shells.
# cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh
Vous pouvez également utiliser la chsh -list ou chsh -l commande pour lister les shells disponibles sur le système :
# chsh --list /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh
Changer le shell de connexion au moment de la création de l'utilisateur
Pour définir le shell particulier au moment de la création de l'utilisateur, la commande ci-dessous peut être utilisée :
# useradd -s [shell] [username]
Par exemple pour définir le shell de l'utilisateur testuser à /bin/bash :
# useradd -s /bin/bash testuser
Modifier le shell de connexion de l'utilisateur existant
Pour changer le shell de l'utilisateur existant, la commande ci-dessous peut être utilisée :
# chsh -s [shell] [user]
Par exemple, pour changer le shell de testuser en /bin/bash en utilisant chsh commande :
# chsh -s /bin/bash testuser
Une autre façon de changer le shell consiste à utiliser la commande usermod. La syntaxe pour changer le shell de l'utilisateur est :
# usermod -s [shell] [user]
Par exemple, pour changer le shell de testuser en /bin/bash en utilisant usermod commande :
# usermod -s /bin/bash testuser
Vérifier
Vérifiez le shell de connexion actuel de l'utilisateur avec l'une des méthodes ci-dessous :
# echo $SHELL /bin/bash
# cat /etc/passwd | grep testuser testuser:x:8152:9152::/home/testuser:/bin/bashRemarque :les utilisateurs non root sont invités à entrer leur mot de passe avant que le shell ne soit modifié. Ces modifications prendront effet lors de la prochaine connexion.