Commande Linux · 4 min read · Sep 15, 2025

Tutoriel sur la commande chsh de Linux pour les débutants (5 exemples)

La commande chsh (changer de shell) dans Linux est un utilitaire qui permet aux utilisateurs de changer leur shell de connexion par défaut. Le shell de connexion est l’interface en ligne de commande avec laquelle les utilisateurs interagissent lors de leur connexion à un système de type Unix. Les shells courants incluent dash, bash, zsh, ksh et fish.

Avant de plonger dans la commande chsh, il est essentiel de comprendre ce qu’est un shell de connexion. Le shell de connexion est le premier processus qui s’exécute sous votre identifiant utilisateur lorsque vous vous connectez. Il est responsable de l’initialisation de votre environnement et de la fourniture d’une interface pour interagir avec le système.

Shells Linux courants

  • Bash (Bourne Again Shell) : Le shell par défaut pour de nombreuses distributions Linux, connu pour sa facilité d’utilisation et ses fonctionnalités robustes.
  • Zsh (Z Shell) : Une version étendue de bash avec de nombreuses fonctionnalités supplémentaires comme l’achèvement de tabulation amélioré et la personnalisation.
  • Ksh (Korn Shell) : Un shell qui offre des fonctionnalités de script trouvées à la fois dans sh et csh.
  • Fish (Friendly Interactive Shell) : Connu pour ses fonctionnalités conviviales comme la coloration syntaxique et les suggestions automatiques.
  • Dash : Le shell Linux Dash (dash) est un shell léger, conforme à POSIX, conçu pour la vitesse et une utilisation minimale des ressources, souvent utilisé comme shell de script par défaut dans les systèmes basés sur Debian.

La commande chsh de Linux

Comme l’explique l’introduction ci-dessus, la commande chsh vous permet de changer votre shell de connexion. Voici sa syntaxe :

chsh [options] [LOGIN]

Et voici ce que dit la page de manuel de l’outil à son sujet :

       La commande chsh change le shell de connexion de l'utilisateur. Cela détermine le nom  
       de la commande de connexion initiale de l'utilisateur. Un utilisateur normal ne peut changer  
       le shell de connexion que pour son propre compte ; le superutilisateur peut changer le shell  
       de connexion pour n'importe quel compte.

Voici quelques exemples sous forme de questions-réponses qui devraient vous donner une bonne idée de la façon dont fonctionne la commande chsh.

Q1. Comment utiliser chsh ?

L’utilisation de base est assez simple - il suffit d’exécuter la commande ‘chsh’ sans arguments. On vous demandera votre mot de passe de connexion, et après l’avoir entré avec succès, vous aurez la possibilité de changer votre shell de connexion.

chsh

Changer de shell pour bash sur Ubuntu

Notez que le shell de connexion pour l’utilisateur actuel est changé par défaut.

Q2. Comment changer le shell de connexion en utilisant chsh ?

Comme vous vous y attendez, il suffit d’entrer la nouvelle valeur (voir la capture d’écran dans l’exemple précédent), et votre shell sera changé pour le nouveau.

Par exemple, j’ai entré /bin/sh comme nouvelle valeur.

Comment changer le shell de connexion en utilisant chsh

Pour vérifier le changement, vous pouvez exécuter à nouveau la commande chsh. La valeur affichée entre crochets est le shell actuel. Donc dans mon cas, le shell actuel est devenu /bin/sh :

Définir un nouveau shell de connexion

Q3. Comment changer le shell de connexion pour un autre utilisateur ?

Pour cela, il suffit de spécifier le nom d’utilisateur comme entrée à la commande chsh.

chsh [nom_utilisateur]

Par exemple, pour changer le shell de connexion de root, utilisez chsh de la manière suivante :

chsh root

Comment changer le shell de connexion pour un autre utilisateur

Q4. Comment faire fonctionner chsh en mode non interactif ?

Utilisez l’option de ligne de commande -s pour cela, qui nécessite qu’un nom de shell soit passé comme entrée.

Par exemple :

chsh -s /bin/sh

Ainsi, le shell de connexion pour l’utilisateur actuel sera changé en /bin/sh de manière non interactive.

Q5. Comment voir une liste des shells de connexion disponibles sur le système ?

Pour jeter un coup d’œil rapide à la liste des shells disponibles dans votre système, il suffit de cat le fichier /etc/shells.

Par exemple, voici la sortie produite sur mon système :

# /etc/shells : shells de connexion valides  
/bin/sh  
/bin/bash  
/bin/rbash  
/bin/dash

Note :

       La seule restriction imposée au shell de connexion est que le nom de la commande  
       doit être répertorié dans /etc/shells, à moins que l'invocateur ne soit le superutilisateur, et  
       alors n'importe quelle valeur peut être ajoutée. Un compte avec un shell de connexion restreint  
       ne peut pas changer son shell de connexion. Pour cette raison, il est déconseillé de placer /bin/rsh  
       dans /etc/shells car changer accidentellement pour un shell restreint empêcherait l'utilisateur  
       de changer jamais son shell de connexion pour revenir à sa valeur d'origine.

Conclusion

Donc vous voyez, la commande chsh est un outil important dont les utilisateurs de la ligne de commande devraient être conscients. Ici, dans ce tutoriel, nous avons discuté de la majorité des options de ligne de commande que l’outil offre. Pour en savoir plus sur chsh, rendez-vous sur sa page de manuel.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.