Comment passer de Bash à Korn Shell sous Linux



Le Korn Shell se présente comme une alternative prisée au Bash Shell, fréquemment employé comme interpréteur de commandes par défaut sous Linux. Ce shell, rétrocompatible avec Bash, s’inspire de nombreuses fonctionnalités utiles du C Shell. Connu sous l’abréviation Ksh, il jouit d’une grande popularité au sein de la communauté. Avec un peu de savoir-faire, il est aisé de le configurer comme shell par défaut sous Linux. Suivez notre guide pas à pas pour découvrir comment procéder!

Note importante : Pour utiliser Ksh sous Linux, votre système doit être basé sur Ubuntu, Debian, Arch Linux, Fedora ou OpenSUSE. Dans le cas contraire, une compilation de Ksh à partir de son code source pourrait être nécessaire.

Installation de Ksh

Le Korn Shell est facilement installable sur la plupart des distributions Linux. Ce tutoriel se concentrera sur la version MirBSD de Ksh, car la version AT&T de Korn Shell n’est pas prise en charge par toutes les distributions (notamment Arch Linux). Si vous souhaitez utiliser la version AT&T, vous pouvez la télécharger ici.

Pour installer Korn Shell, l’alternative à Bash sous Linux, ouvrez un terminal et suivez les instructions spécifiques à votre système d’exploitation.

Ubuntu

sudo apt install mksh

Debian

sudo apt-get install mksh

Arch Linux

sudo pacman -S mksh

Fedora

sudo dnf install mksh

OpenSUSE

sudo zypper install mksh

Linux (générique)

Si vous rencontrez des difficultés pour trouver la version MirBSD de Korn Shell dans le gestionnaire de paquets de votre distribution, vous devrez télécharger le code source du shell et le compiler manuellement. Pour plus d’informations, visitez la page de téléchargement du site officiel.

Si vous avez besoin d’aide pour la compilation, des informations sont disponibles ici.

Accéder au Korn Shell

Saviez-vous qu’il est possible d’utiliser le Korn Shell sur votre système Linux sans le définir comme shell par défaut? En effet! La commande ksh dans un terminal vous permet de basculer instantanément depuis Bash.

ksh

Pour utiliser le Korn Shell MirBSD en tant qu’utilisateur root, la méthode la plus simple consiste à utiliser la commande su -, mais sudo -s fonctionne aussi si su n’est pas disponible.

su -

ou

sudo -s

Une fois connecté en tant que root, vous pouvez utiliser la commande ksh pour passer à Korn Shell.

ksh

Localisation des shells disponibles

Avant de définir Korn Shell comme shell par défaut, il est nécessaire de connaître son emplacement. Pour cela, le plus simple est de consulter le fichier /etc/shells.

Pour afficher ce fichier, utilisez la commande cat dans un terminal.

cat /etc/shells

Repérez la ligne correspondant à l’emplacement du Korn Shell. Vous pouvez aussi rediriger la sortie vers un fichier texte pour plus de facilité avec la commande ci-dessous.

Note : Il peut y avoir plusieurs entrées pour Korn Shell dans ce fichier. Ignorez celles qui contiennent le mot « statique ».

cat /etc/shells >> /home/username/Documents/location-of-ksh.txt

Si vous ne souhaitez rediriger que les lignes correspondant à Korn Shell, utilisez plutôt :

cat /etc/shells | grep mksh >> /home/username/Documents/location-of-ksh.txt

Définir Korn Shell par défaut

Pour que Korn Shell soit lancé à chaque ouverture de terminal à la place de Bash, ouvrez une fenêtre de terminal et exécutez la commande chsh.

Attention : chsh est utilisé pour changer le shell par défaut de l’utilisateur courant. Ne l’utilisez pas en tant que root afin de ne pas modifier le shell du compte root par erreur!

chsh

La commande chsh affichera « Entrez la nouvelle valeur ou appuyez sur ENTRÉE pour la valeur par défaut ». Ouvrez le fichier texte location-of-ksh.txt dans votre éditeur préféré et copiez l’emplacement du Korn Shell dans votre presse-papier. Vous pouvez aussi afficher le fichier directement dans le terminal avec :

cat /home/username/Documents/location-of-ksh.txt

Collez l’emplacement du Korn Shell dans l’invite chsh et appuyez sur Entrée pour confirmer. Saisissez ensuite votre mot de passe pour valider le changement.

Après avoir exécuté la commande chsh, fermez votre session de terminal et redémarrez votre machine. À la réouverture, Korn Shell devrait être votre shell par défaut.