Vous êtes sur la page 1sur 30

M10

ADMINISTRATION D’UN
RÉSEAU SOUS LINUX
Réalisé par: Hicham BOURHIL
PLAN
• Rappel sur les commandes de base
• Configuration réseau
• DNS
• Serveur Web (HTTP)
• Partage de fichier (Samba, NFS, FTP)
• DHCP
• Telnet / SSH
PLAN
• Scripts Shell
• Automatisation des tâches
• OpenLDAP
• Serveur de messagerie
• Surveillance et analyse des performances
• Dépannage
SCRIPTS SHELL
• Introduction
• Variables
• Tableaux
• Calcul
• Conditions
• Boucles
INTRODUCTION
• Le script le plus simple consiste à afficher un message:

echo "Hello World"

v="Hello World"
echo $v
INTRODUCTION

• Pour préciser le programme qui exécutera le script:

#!/bin/bash

• On peut utiliser d’autres shells (sh, ksh…), d’autres


langages de script (python, perl…).
VARIABLES
• Pour lire une valeur à partir du clavier (utilisateur):

read x
echo $x

• Remarque: Le shell Bash utilise le typage dynamique, c’est-


à-dire qu’il n’est pas nécessaire de spécifier le type d’une
nouvelle variable.
VARIABLES
• Pour afficher un message avant la lecture d’une
valeur:

read -p "Donner votre nom:" nom


echo Bonjour $nom
VARIABLES
• Si on souhaite extraire une partie d’une chaîne de
caractères, on utilise la syntaxe suivante:
${x:debut:nbr_car}

• Voici un exemple:
x="abcde"
echo ${x:2:1}
VARIABLES
• On peut aussi stocker le résultat d’une commande
dans une variable par la syntaxe suivante:

x=`commande`
VARIABLES D’ENVIRONNEMENT
• Pour afficher les variables d’environnement, on
utilise la commande « env ».

• Exemples: $USER
TABLEAUX
• On peut aussi utiliser des tableaux:

t=("a" "b" "c" "d")

echo ${t[0]}
CALCUL
• On peut effectuer des calculs sur des variables:

somme=$(($a + $b))
soustraction=$(($a - $b))
produit=$(($a * $b))
division=$(($a / $b))
CONDITIONS
• Pour exécuter des instruction en fonction de
conditions, on utilise l’instruction « if »:
if [ condition1 ]
then
if [ condition1 ] instructions
then elif [ condition2 ]
instructions then
fi instructions
else
instructions
fi
CONDITIONS
• Exemple:

#!/bin/bash
read -p "Entrer votre mot de passe:" pass
if [ $pass = "123456" ]
then
echo "Bienvenue"
else
echo "Mot de passe incorrect"
fi
CONDITIONS
• Pour vérifier l’existence d’un fichier ou dossier:

if [ -d dossier ] if [ -f fichier ]
then then
echo "Le dossier existe" echo "Le fichier existe"
fi fi
CONDITIONS
• Pour comparer 2 valeurs numériques, on utilise les
opérateurs suivants:
Condition Signification
$chaine1 = $chaine2 Vérifie si les deux chaînes de caractères sont égales
$chaine1 != $chaine2 Vérifie si les deux chaînes sont différentes
$num1 -eq $num2 Vérifie si les deux nombres sont égaux
! $num1 -eq $num2 Vérifie si les deux nombres sont différents
$num1 -gt $num2 Vérifie si num1 est supérieur à num2
$num1 -lt $num2 Vérifie si num1 est inférieur à num2
$num1 -ge $num2 Vérifie si num1 est supérieur ou égal à num2
$num1 -le $num2 Vérifie si num1 est inférieur ou égal à num2
CONDITIONS
• Pour vérifier la négation d’une condition, on utilise un
point d’exclamation avant la condition:
if [ ! -d dossier ]

• Pour effectuer plusieurs tests à la fois, on utilise les


symboles « && » et « || » pour désigner « ET » et « OU »
respectivement:
if [ -d dossier && $n != 0 ]
BOUCLES
• Pour exécuter des instruction en boucle, on peut
utiliser l’instruction « for » avec deux manières:

for ((e1;e2;e3)) for i in liste


do do
instructions instructions
done done
BOUCLES
• Exemples:

for ((i=1;$i<10;i++)) for i in {1..5}


do do
echo $i echo $i for i in $@
done done do
echo $i
for i in {"a","b","c"} for i in * done
do do
echo $i echo $i
done done
BOUCLES
• On peut aussi utiliser les deux instructions « while » et
« until » comme suit:

while ((condition-continuite)) until ((condition-arrêt))


do do
instructions instructions
done done
BOUCLES
• Exemples:

i=0 i=0
while (($i<10)) until (($i==10))
do do
i=$(($i+1)) i=$(($i+2))
echo $i echo $i
done done
TRAVAUX PRATIQUES
TP1

• Créer un script qui permet de déplacer les


fichiers jpg dans le dossier IMAGES et supprimer
les fichiers TXT. Quand le dossier IMAGES n’existe
pas, il faudra le créer.
TP2

• Créer un script qui permet de saisir deux valeurs


a et b, et de donner le choix entre la somme, la
soustraction, le produit ou la division des deux
valeurs.
TP3

• Créer un script qui permet d’afficher le texte suivant:

On est le JJ du mois MM en AAAA.


Maintenant il est H heure(s) Min minutes et
S secondes.
TP4

• Créer un script qui permet de calculer ab (a à la


puissance b).
TP5

• Créer un script qui permet de calculer le nombre de


fichiers et le nombre de dossiers présents dans le
répertoire courant.
TP6
• Créer un script qui permet de lire une chaîne de
caractère et de n’afficher que les caractères
des positions impaires (1ère ,3ème ,5ème…).

• Exemple:

Donner un nom: Karim


Résultat: K r m
TP7
• Donner un script qui permet de saisir des nombres
jusqu’à saisir 0, puis de les trier par ordre croissant.

• Exemple:
Donner les nombres à trier:
5
2
7
1
Résultat: 1 2 5 7

Vous aimerez peut-être aussi