Comment modifier le shell par défaut sous Linux

Comment modifier le shell par défaut sous Linux
Modifier le shell par défaut dans l'image de fonctionnalité Linux

Un shell est l’interface par laquelle vous pouvez communiquer avec votre système Linux. Il vous permet de saisir des commandes et de contrôler votre ordinateur. Chaque utilisateur Linux possède un shell par défaut, qui est bash dans la plupart des cas. Il existe également de nombreuses autres options disponibles, notamment Zsh, ksh, rc et fish. Nous vous présentons ici les différentes méthodes permettant de modifier votre shell par défaut sous Linux.

Comment trouver le nom de votre shell actuel

Avant de nous plonger dans la modification du shell par défaut, il est bon de savoir quel shell vous utilisez actuellement. Vous pouvez le savoir en vérifiant la variable d’environnement système à l’aide de la commande echo suivante :

affichage du chemin d'accès actuel du shell à l'aide de la commande echo

Cette commande imprimera le chemin de votre shell actuel, tel que /bin/bashou /bin/zsh.

Le /etc/passwdfichier contient des informations importantes sur les comptes utilisateurs. Vous pouvez également utiliser ce fichier pour trouver votre shell actuel :

recherche du shell actuel à l'aide de la commande grep sur le fichier de variables d'environnement

Vous pouvez également trouver plus d’informations sur le shell actuel en vérifiant l’ID de processus (PID), à l’aide de la commande ps :

afficher les informations du processus shell actuel à l'aide de la commande ps

Cette sortie confirme que le shell actuel est bash.

Lister tous les shells installés

Maintenant que vous connaissez votre shell actuel, vous souhaiterez peut-être voir quelles autres options sont disponibles sur votre système. Pour localiser tous les shells installés sur votre système, vous devez consulter le /etc/shellsfichier.

Utilisons la commande cat pour afficher une liste de tous les shells disponibles sur votre système :

liste de tous les shells installés sur le système Linux Ubuntu

Cela vous donnera une idée des shells vers lesquels vous pouvez basculer. Vous pouvez également installer n’importe quel nouveau shell à l’aide de votre gestionnaire de paquets et l’utiliser comme shell par défaut.

De plus, vous pouvez essayer temporairement ces shells répertoriés sans modifier votre shell par défaut. Pour démarrer une nouvelle session shell, saisissez simplement le nom du shell dans le terminal.

Par exemple, pour essayer le shell Zsh, tapez :

Cela vous permet d’expérimenter différents shells avant de décider d’effectuer un changement permanent.

Changer le shell par défaut sous Linux à l’aide de Chsh

La manière la plus simple de modifier le shell par défaut sous Linux est d’utiliser la chshcommande. La chshcommande signifie « changer le shell » et est utilisée avec l’ -soption suivie du chemin de votre shell.

Si vous ne connaissez pas le chemin d’accès à votre shell, exécutez-le type zshdans le terminal pour obtenir le chemin souhaité. Après avoir obtenu le chemin d’accès à votre shell, vous pouvez remplacer votre shell par défaut par votre shell spécifique.

Par exemple, si vous souhaitez passer à Zsh, vous devez utiliser le chsh -savec le chemin du shell Zsh :

Modification du shell par défaut à l'aide de la commande chsh

Vous serez invité à saisir votre mot de passe. Une fois cette étape effectuée, vous devrez vous déconnecter et vous reconnecter pour confirmer les modifications.

La chshcommande modifiera définitivement le shell de connexion par défaut. Vous pouvez vérifier les modifications en exécutant cette commande :

vérification du changement de shell à l'aide de la commande grep sur le fichier /etc/passwd

Changer un autre shell utilisateur

Si vous disposez des privilèges root et de la possibilité d’utiliser la sudocommande, vous pouvez modifier le shell par défaut pour d’autres comptes d’utilisateur. Cela peut être utile si vous souhaitez fournir un environnement shell différent, tel que fish, à un autre utilisateur.

Par exemple, pour changer le shell d’un autre utilisateur en Zsh, exécutez cette commande dans le terminal :

changer un autre shell utilisateur à l'aide de la commande chsh

Cette commande indique au système de modifier le shell par défaut de l’utilisateur spécifique vers le shell Zsh, qui se trouve à l’adresse /bin/zsh.

Modifier le shell par défaut sous Linux à l’aide d’Usermod

Une autre méthode pour changer de shell consiste à utiliser la usermodcommande . Cette commande permet de modifier les comptes utilisateurs et peut également être utilisée pour changer le shell par défaut.

Pour modifier votre shell par défaut à l’aide de usermod, ouvrez un terminal avec les privilèges root et tapez cette commande :

Ici, vous devez remplacer /path/to/new/shellpar le chemin du shell souhaité et your_usernamepar votre nom d’utilisateur réel.

Par exemple, changeons le shell bash par défaut en zsh :

changer le shell par défaut en un autre shell à l'aide de la commande usermod

Comme précédemment, déconnectez-vous et reconnectez-vous à votre système Linux pour que ces modifications prennent effet.

Vous pouvez vérifier le passage au nouveau shell en consultant les détails du compte utilisateur avec la commande suivante :

Vérification du nouveau shell après le passage du shell par défaut à l'aide de getent

Modification manuelle du shell par défaut sous Linux

Vous pouvez également modifier manuellement le shell par défaut en modifiant le /etc/passwdfichier. Pour ce faire, remplacez le chemin du shell par défaut par le nouveau shell. Soyez toutefois prudent avec cette technique, car elle peut entraîner des problèmes si elle n’est pas effectuée correctement.

Pour modifier manuellement votre shell, ouvrez le /etc/passwdfichier à l’aide de votre éditeur de texte préféré (comme nano ou vim) avec les privilèges root :

ouvrir le fichier /etc/passwd à l'aide de l'éditeur de texte nano

Recherchez votre nom d’utilisateur dans le fichier. Le dernier champ de votre saisie d’utilisateur affichera votre shell actuel. Modifiez-le en fonction du chemin d’accès au shell souhaité.

Par exemple, modifions notre /bin/bashchemin d’accès shell par défaut en/bin/zsh :

modification du shell bash par défaut en shell zsh dans l'éditeur de texte /etc/passwd.

Enfin, enregistrez le fichier en appuyant sur Ctrl+ Set quittez l’éditeur avec Ctrl+ X. Déconnectez-vous à nouveau et reconnectez-vous pour appliquer les modifications.

Alternative à votre shell par défaut

Bien que Bash soit un outil de script formidable et puissant, il existe plusieurs autres shells qui peuvent améliorer votre expérience de ligne de commande et fournir de meilleures options de personnalisation :

Poisson

fish fait référence à Friendly Interactive Shell. Ce shell possède une interface de ligne de commande intuitive, avec coloration syntaxique, suggestions automatiques et saisie semi-automatique qui facilitent la saisie des commandes.

fish inclut également un outil de configuration basé sur le Web. Cela signifie que vous pouvez modifier les paramètres et créer des fonctions sans avoir à fouiller dans les fichiers de configuration.

Zsh

Zsh, ou Z shell, est hautement personnalisable et possède de nombreuses fonctionnalités utiles. Parmi ses meilleures fonctionnalités, on trouve le globbing, la correction automatique, les configurations personnalisées et la saisie semi-automatique avancée.

Zsh prend également en charge les plugins et les thèmes, ce qui vous permet de personnaliser facilement votre expérience de shell selon vos préférences. Avec Zsh, vous pouvez également afficher votre branche Git et effectuer des manipulations de fichiers complexes avec des modèles simples.

Ksh

ksh, ou KornShell, reprend les meilleures fonctionnalités du shell C et du shell Bourne, ce qui en fait un shell puissant et facile à utiliser avec des capacités de script avancées. Certaines fonctionnalités de ksh incluent des fonctions mathématiques intégrées, l’édition en ligne de commande, les scripts shell et l’extensibilité.

Pour conclure

Changer votre shell par défaut sous Linux est un processus simple qui peut améliorer votre expérience de la ligne de commande. Si vous êtes un utilisateur expérimenté, vous devriez absolument essayer d’autres shells Linux alternatifs.

Crédit image : Lukas via Unsplash . Toutes les captures d’écran par Haroon Javed.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *