Introduction
Les variables d'environnement Linux sont des paires clé-valeur qui peuvent influencer le fonctionnement des processus sur votre système. Comprendre comment gérer ces variables est essentiel pour les utilisateurs Linux, des débutants aux administrateurs avancés.
Dans ce lab (atelier), vous apprendrez à afficher les variables d'environnement existantes, à créer vos propres variables temporaires, à modifier des variables système importantes telles que PATH, et à rendre vos modifications persistantes d'une session de connexion à l'autre. Ces compétences constituent la base de la gestion de l'environnement Linux et vous aideront à personnaliser votre expérience Linux et à résoudre les problèmes liés à l'environnement.
À la fin de ce lab, vous aurez acquis une expérience pratique des commandes et des techniques nécessaires pour gérer efficacement les variables d'environnement sous Linux.
Affichage des variables d'environnement
Les variables d'environnement stockent des informations utilisables par le système et les applications. Dans cette étape, vous apprendrez à afficher les variables d'environnement existantes sur votre système Linux.
Tout d'abord, créons un répertoire dédié à nos exercices de lab (atelier) :
mkdir -p ~/project/env_lab
Naviguez jusqu'à ce répertoire :
cd ~/project/env_lab
Maintenant, pour afficher toutes les variables d'environnement actuellement définies, utilisez la commande env :
env
Cette commande affiche une liste de toutes les variables d'environnement de votre session actuelle. La sortie ressemblera à ceci :
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
HOME=/home/labex
USER=labex
SHELL=/bin/zsh
...
Chaque ligne affiche le nom d'une variable, suivi d'un signe égal (=), puis de sa valeur. Ces variables définissent divers aspects de votre environnement.
Pour afficher une variable d'environnement spécifique, vous pouvez utiliser la commande echo en préfixant le nom de la variable par un signe dollar ($). Par exemple, pour afficher la valeur de la variable de votre répertoire personnel :
echo $HOME
Cela devrait afficher quelque chose comme :
/home/labex
De même, pour afficher votre utilisateur actuel :
echo $USER
Sortie attendue :
labex
Configuration de variables d'environnement temporaires
Les variables d'environnement peuvent être définies temporairement pour la session shell actuelle. Cela est utile lorsque vous avez besoin d'une variable pour une tâche spécifique sans apporter de modifications permanentes à votre système.
Pour définir une variable d'environnement temporaire, utilisez la commande export suivie du nom et de la valeur de la variable :
export TEST_VAR="Hello, Linux"
Cela crée une variable nommée TEST_VAR avec la valeur "Hello, Linux". Pour vérifier que la variable a été correctement définie, utilisez echo :
echo $TEST_VAR
Vous devriez voir :
Hello, Linux
Vous pouvez également définir plusieurs variables à la fois :
export VAR1="First" VAR2="Second"
Vérifiez les deux variables :
echo $VAR1
echo $VAR2
Sortie attendue :
First
Second
Pour voir vos nouvelles variables parmi toutes les variables d'environnement, exécutez :
env | grep VAR
Cela filtrera la sortie pour afficher uniquement les lignes contenant "VAR", par exemple :
TEST_VAR=Hello, Linux
VAR1=First
VAR2=Second
N'oubliez pas que les variables créées de cette manière n'existent que dans la session shell actuelle. Si vous ouvrez une nouvelle fenêtre ou un nouvel onglet de terminal, ces variables ne seront pas disponibles.
Comprendre et modifier la variable PATH
La variable d'environnement PATH est l'une des variables les plus importantes sous Linux. Elle indique au système où chercher les fichiers exécutables lorsque vous tapez une commande.
Tout d'abord, examinez votre PATH actuel :
echo $PATH
Vous verrez une liste de répertoires séparés par des deux-points, similaire à :
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Lorsque vous tapez une commande, le système recherche dans ces répertoires dans l'ordre jusqu'à ce qu'il trouve un exécutable correspondant.
Maintenant, créons un nouveau répertoire pour nos scripts personnalisés et ajoutons-le au PATH :
mkdir -p ~/project/env_lab/bin
Pour ajouter ce répertoire au début de votre PATH, utilisez :
export PATH=~/project/env_lab/bin:$PATH
Cela ajoute notre nouveau répertoire au début du PATH existant. Vérifiez le changement :
echo $PATH
Maintenant, votre sortie devrait commencer par votre nouveau répertoire :
/home/labex/project/env_lab/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Créons un simple script pour tester notre PATH modifié :
cd ~/project/env_lab/bin
Créez un fichier nommé hello en utilisant l'éditeur nano :
nano hello
Ajoutez le contenu suivant au fichier :
#!/bin/bash
echo "Hello from my custom script!"
Enregistrez le fichier en appuyant sur Ctrl+O, puis Entrée, et quittez avec Ctrl+X.
Rendez le script exécutable :
chmod +x hello
Maintenant, depuis n'importe quel répertoire, vous devriez être en mesure d'exécuter votre script en tapant simplement son nom :
cd ~/project/env_lab
hello
Vous devriez voir :
Hello from my custom script!
Cela démontre comment la variable PATH aide le système à trouver les exécutables et comment vous pouvez la personnaliser pour inclure vos propres répertoires de scripts.
Utilisation des variables d'environnement dans les commandes et les scripts
Les variables d'environnement peuvent être utilisées de diverses manières dans les commandes et les scripts. Dans cette étape, vous allez apprendre à utiliser efficacement les variables d'environnement.
Tout d'abord, créons une nouvelle variable d'environnement avec votre nom :
export MY_NAME="Linux User"
Vous pouvez utiliser cette variable dans les commandes en la préfixant avec $ :
echo "Hello, $MY_NAME"
Cela devrait afficher :
Hello, Linux User
Les variables d'environnement peuvent également être utilisées avec d'autres commandes. Par exemple, créons un répertoire portant le nom de notre variable :
mkdir -p ~/project/env_lab/$MY_NAME
Vérifions que le répertoire a été créé :
ls -la ~/project/env_lab/
Vous devriez voir un répertoire nommé "Linux User" dans la sortie.
Maintenant, créons un simple script qui utilise des variables d'environnement :
cd ~/project/env_lab
nano greet.sh
Ajoutez le contenu suivant :
#!/bin/bash
## Utilisez les variables d'environnement existantes
echo "Hello, $MY_NAME"
echo "Your home directory is $HOME"
## Utilisez une variable passée au script
echo "The current time and date is $(date)"
## Créez une variable locale
local_var="This is a local variable"
echo $local_var
## Exporte une nouvelle variable depuis le script
export GREETING="Have a nice day!"
echo $GREETING
Enregistrez et quittez avec Ctrl+O, Entrée et Ctrl+X.
Rendez le script exécutable :
chmod +x greet.sh
Exécutez le script :
./greet.sh
Vous verrez une sortie similaire à :
Hello, Linux User
Your home directory is /home/labex
The current time and date is Fri Aug 18 12:34:56 UTC 2023
This is a local variable
Have a nice day!
Après avoir exécuté le script, vérifiez si la variable GREETING existe dans votre environnement :
echo $GREETING
Vous devriez voir :
Have a nice day!
Cela confirme que les variables exportées depuis les scripts deviennent partie intégrante de votre environnement shell, tandis que les variables locales du script ne persistent pas après la fin du script.
Rendre les variables d'environnement persistantes
Jusqu'à présent, toutes les variables d'environnement que nous avons définies seront perdues lorsque vous fermerez votre session de terminal. Dans cette étape, vous allez apprendre à rendre les variables d'environnement persistantes d'une session à l'autre.
Sous Linux, les fichiers de démarrage du shell tels que .bashrc, .zshrc ou .profile sont utilisés pour définir des variables d'environnement persistantes. Étant donné que notre environnement utilise zsh, nous allons utiliser le fichier .zshrc.
Tout d'abord, ouvrons le fichier .zshrc :
nano ~/.zshrc
Naviguez jusqu'à la fin du fichier (utilisez Ctrl+Fin ou les touches fléchées) et ajoutez les lignes suivantes :
## Custom environment variables
export PERSIST_VAR="This variable will persist"
export PATH=$HOME/project/env_lab/bin:$PATH
Enregistrez et quittez avec Ctrl+O, Entrée et Ctrl+X.
Pour appliquer ces modifications sans fermer et rouvrir votre terminal, chargez le fichier :
source ~/.zshrc
Maintenant, vérifiez que votre nouvelle variable est définie :
echo $PERSIST_VAR
Vous devriez voir :
This variable will persist
Maintenant, même si vous fermez et rouvrez votre terminal, cette variable sera toujours disponible.
Pour démontrer cela, simulons la fermeture et la réouverture du terminal en démarrant une nouvelle session de shell :
zsh
Vérifiez si votre variable est toujours disponible :
echo $PERSIST_VAR
Vous devriez toujours voir :
This variable will persist
Quittez ce shell pour revenir à votre session précédente :
exit
Cette méthode d'ajout de variables d'environnement au fichier de configuration de votre shell garantit qu'elles sont disponibles chaque fois que vous vous connectez à votre système.
Pour les variables d'environnement système qui doivent être disponibles pour tous les utilisateurs, les administrateurs peuvent les ajouter aux fichiers dans /etc/profile.d/ ou modifier /etc/environment.
Résumé
Dans ce laboratoire (lab), vous avez appris les bases de la gestion des variables d'environnement sous Linux, qui sont essentielles pour personnaliser votre expérience Linux et contrôler le comportement des applications.
Les concepts clés abordés incluent :
- Affichage des variables d'environnement avec la commande
envet affichage de variables spécifiques avececho $VARIABLE_NAME - Définition de variables d'environnement temporaires à l'aide de la commande
export - Compréhension et modification de la variable PATH pour contrôler où Linux recherche les programmes exécutables
- Utilisation des variables d'environnement dans les commandes et les scripts pour rendre votre code plus flexible
- Rendre les variables d'environnement persistantes en les ajoutant aux fichiers de configuration du shell
Ces compétences constituent la base de la gestion de l'environnement Linux et sont applicables à diverses distributions Linux. Comprendre les variables d'environnement est crucial pour les utilisateurs Linux de tous niveaux, des débutants aux administrateurs et développeurs avancés.
Les variables d'environnement vous aident à personnaliser votre expérience de shell, à contrôler le comportement des applications et à créer des scripts plus flexibles. Au fur et à mesure de votre progression dans le monde Linux, vous constaterez que la bonne gestion de l'environnement devient de plus en plus importante pour des tâches plus complexes telles que le développement logiciel, l'administration système et la résolution de problèmes.



