Changer de shell sur GNU Linux Debian

De Wiki Amis SH
Aller à la navigation Aller à la recherche



Le wiki : Accueil - Administrateur - Bureautique - Développeur - Intégrateur - Marketing - Multimédia - Objets numériques - Jeux - We make Hack


Changer de shell sur GNU Linux Debian

Source originale : http:// formation-debian . via . ecp .fr
Chapitre 19. Configurer le shell
Partie II. Utilisation et configuration de base de Debian GNU/Linux                  
--------------------------------------------------------------------------------------------------------------------

Définition du shell

Le shell s'exécute quand vous vous logguez. C'est lui qui présente le prompt, qui envoie nos commandes au système, qui enregistre certaines variables. Il est encore là quand vous vous délogguez.

Shell par défaut - bash

Le shell par défaut sous Debian s'appelle bash. Mais il existe  aussi csh, tcsh, zsh, sash...

Changer de shell et passer de bash à zsh

Je vous propose d'installer le shell zsh, de télécharger des fichiers de configuration et ensuite de passer de bash à zsh.

Configurer le shell

2. Installer et configurer Zsh

2.1. Installer le paquet et les fichiers de configuration

# Installez le paquet zsh, qui contient le shell du même nom :
sudo apt install zsh
# Remplacer les fichiers de configuration par défaut par mes fichiers de configuration :
cd ~/fichiers-config
cp zshrc zshenv zlogin zlogout /etc/zsh/
cp dir_colors /etc/
# Si vous ne suivez pas la formation de formation-debian.via.ecp.fr depuis le début :
# Le domaine formation-debian.via.ecp.fr est tombé. Si nécessaire, utiliser les archives du web pour récupérer le contenu.
% wget http:// formation-debian .via .ecp .fr/fichiers-config/zshrc
% wget http:// formation-debian .via .ecp .fr/fichiers-config/zshenv
% wget http:// formation-debian .via .ecp .fr/fichiers-config/zlogin
% wget http:// formation-debian .via .ecp .fr/fichiers-config/zlogout
% wget http:// formation-debian .via .ecp .fr/fichiers-config/dir_colors
mv zshrc zshenv zlogin zlogout /etc/zsh/
mv dir_colors /etc/

2.2. Configurer le proxy

Si vous utilisez un proxy pour accéder à Internet, au lieu de saisir à chaque fois "export http_proxy=...", éditer en root le fichier /etc/zsh/zshenv pour renseigner la configuration :
o si votre proxy ne requiert pas d'authentification par login et mot de passe :
# Proxy HTTP / FTP sans mot de passe
export http_proxy="http://proxy.exemple.org:8080"
export ftp_proxy="ftp://proxy.exemple.org:8080"
# Ne pas passer par le proxy pour les domaines locaux
export no_proxy="exemple.org"
où
proxy.exemple.org est le nom dns de votre proxy et 8080 son port.
o si votre proxy requiert une authentification par login et mot de passe :
# Proxy HTTP / FTP avec mot de passe
export http_proxy="http://login:password@proxy.exemple.org:8080"
export ftp_proxy="ftp://login:password@proxy.exemple.org:8080"
# Ne pas passer par le proxy pour les domaines locaux
export no_proxy="exemple.org"
Où proxy.exemple.org est le nom dns de votre proxy, 8080 son port, login et password votre login et mot de passe pour le proxy.
Enregistrer et Quitter.

2.3. Changer de Shell

Pour changer de shell, un utilisateur doit exécuter la commande chsh et préciser où se trouve son nouveau shell.
Il bénéficiera alors des fichiers de configuration  par défaut que vous venez  d'installer.
Il pourra aussi mettre ses propres fichiers de configuration dans son home (même nom mais précédé d'un point).
Pour passer à Zsh, un utilisateur doit donc taper :
% chsh
Enter the new value, or press return for the default
Login Shell [/bin/bash]:/bin/zsh
Pour que le changement soit effectif, il faut se déconnecter (Ctrl+d) et se relogguer. Vous pouvez alors admirer la différence (Figure 19.1) !
                                                Figure 19.1. Bash et Zsh
                                                      Bash et Zsh
Les informations sur les comptes utilisateur sont en fait stockées dans le fichier /etc/passwd. Ce fichier se présente ainsi :
<login>:<hash du mot de passe (optionnel)>:<uid>:<gid>:<nom complet>:<répertoire personnel>:<shell>
soit par exemple pour moi :
jpountz:x:1000:1000:Adrien Grand,,,:/home/jpountz:/bin/zsh
Vous trouverez plus de détails sur le fichier /etc/passwd grâce à sa page de manuel :
% man 5 passwd
Lors d'un changement de shell, la commande chsh se charge donc de modifier l'information correspondant au shell utilisateur.
[Astuce] Astuce
Zsh propose une autocomplétion très efficace. Il s'agit d'un outil qui permet d'accélérer la saisie des commandes, en les complétant automatiquement dès qu'il n'y a plus d’ambiguïté.
Pour l'utiliser, il faut appuyer sur la touche Tab pendant la frappe, mais essayez plutôt :
           % aptiTab insTab vimTab

2.4. Shell par défaut pour les nouveaux utilisateurs

Pour changer le shell par défaut pour les nouveaux utilisateurs, il faut modifier le fichier de configuration de la commande adduser qui sert à ajouter un utilisateur au système. En root, éditez le fichier /etc/adduser.conf avec vim :
# vim /etc/adduser.conf
  Changez la ligne :
DSHELL=/bin/bash
  par la ligne :
DSHELL=/bin/zsh
  Enregistrez et quittez. Comme ça, quand le root rajoutera un nouvel utilisateur avec la commande :
# adduser toto
  ce nouvel utilisateur aura un shell zsh bien configuré.

2.5. Qu'est-ce que le PATH ?

  PATH est  une variable  d'environnement. Pour  afficher le  contenu d'une  variable d'environnement,  on utilise  la
  commande echo :
% echo $PATH
/usr/local/bin:/usr/local/sbin:/bin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:
/sbin:/home/alexis/bin
  La variable PATH contient la liste de tous les répertoires dans lesquels le système va chercher les exécutables  des
  commandes que vous tapez au prompt, séparés par des  « : ». Par exemple, le répertoire /bin/ contient les  commandes
  Unix de base, et vous pouvez vérifier qu'il est bien dans le PATH.
  Pour modifier le PATH, éditez le fichier de configuration /etc/zsh/zshenv et ajoutez ou supprimez un répertoire à la
  ligne qui commence par export PATH=.
  --------------------------------------------------------------------------------------------------------------------

Bibliographie

Site officiel de ZSH : http://www.zsh.org
Installer ZSH : https://blogmotion.fr/systeme/zhs-bash-14440
http:// formation-debian .via .ecp .fr/index.html
http:// formation-debian .via .ecp .fr/intro-partie2.html
http:// formation-debian .via .ecp .fr/gestion-packages.html
http:// formation-debian .via .ecp .fr/fstab.html
http:// formation-debian .via .ecp .fr/modifications.xml
http:// formation-debian .via .ecp .fr/gestion-packages.html
http:// formation-debian .via .ecp .fr/fstab.html
http:// formation-debian .via .ecp .fr/shell.html#idp7918048
http:// formation-debian .via .ecp .fr/shell.html#idp7496016
http:// formation-debian .via .ecp .fr/shell.html#fig-bash_vs_zsh
http:// formation-debian .via .ecp .fr/gestion-packages.html
http:// formation-debian .via .ecp .fr/intro-partie2.html
http:// formation-debian .via .ecp .fr/fstab.html
http:// formation-debian .via .ecp .fr/index.html

Notes personnelles - Mise en application - 2017

Changer de shell (zsh) et suivre la procédure présentée sur le domaine formation-debian.via-ecp.fr".
sudo aptitude install zsh
mkdir  ~/fichiers-config  && cd ~/fichiers-config
wget http:// formation-debian .via .ecp .fr/fichiers-config/zshrc
wget http:// formation-debian .via .ecp .fr/fichiers-config/zshenv
wget http:// formation-debian .via .ecp .fr/fichiers-config/zlogin
wget http:// formation-debian .via .ecp .fr/fichiers-config/zlogout
wget http:// formation-debian .via .ecp .fr/fichiers-config/dir_colors
cp zshrc zshenv zlogin zlogout /etc/zsh/
mv dir_colors /etc/
cp zshrc ~/.zshrc

Exemple de scripts shell

Source d'origine : https://linuxfr.org/users/thom/journaux/100-scripts-shell-unix
100 scripts shell UNIX : http://www.eyrolles.com/Chapitres/9782212114836/tdm_Taylor.pdf
Les sources des 100 scripts : www.editions-eyrolles.com/download/9782212114836/ScriptsUnix.zip

NAVIGATION

PARTICIPER ET PARTAGER

Bienvenue sur le wiki de Amis SH.
De nombreuses pages sont partagées sur ce wiki.
Créer un compte utilisateur pour participer sur le wiki.
Les pages présentées sur le wiki évoluent tous les jours.
Certaines recherches sont peu abouties et incluent des erreurs.
Utiliser la recherche interne du wiki pour trouver votre contenu.
La page de discussion de Amis SH vous permet de poser vos questions.
Consulter le site amis-sh.fr pour installer votre propre serveur web.
Améliorer le contenu des pages avec vos retours depuis l'onglet discussion.
Ce contenu ne doit pas servir à nuire à autrui ou à un système informatique.
Protéger votre système Linux ou Windows avec cette page dédiée à la sécurité.

SOUTENIR CE WIKI

Soutenir le wiki avec un don en monnaie numérique :
AEON - Bitcoins - Bitcoins Cash - Bitcoins Gold - Bitcore - Blackcoins - Basic Attention Token - Bytecoins - Clams - Dash - Monero - Dogecoins - Ğ1 - Ethereum - Ethereum Classique - Litecoins - Potcoins - Solarcoins - Zcash

OBTENIR DE LA MONNAIE NUMERIQUE

Obtenir gratuitement de la monnaie numérique :
Miner de la cryptomonnaie.