Vous êtes sur la page 1sur 15

Compte Rendu

Traveaux pratiques
automatisation des taches

Système d’exploitation GNU/linux

Travaille Réalisé par : FTAICHI Omar Centre BTS Safi, Lycée


Encadré par : Mr SEHAIL Hamid AL-Khawarizmi
Introduction
1
Notre travaille pratique, se repartie sur trois taches ou plutôt trois exercices,
dont chacun consiste à la mise en place et la réalisation d’un script qui
permet à automatiser la réalisation d’une série d’opérations.

1.1 Premier exercice : le script “backup.sh”

Cette partie du TP consiste a la mise en place du script “backup.sh” qui permettra


d’automatiser la sauvegarde des fichiers de configuration sises sous le répertoire /etc , dans
un répertoire nommé /home/archives, qui sera synchroniser avec le répertoire /sauvegarde
du serveur
srv3.medmask.ma.
Le script sera exécuté chaque vendredi à 16h:30.

1.2 Deuxième exercice : le script “news.sh”

Dans cet exercice on va réaliser un script nommé news.sh qui admet 4 arguments et accepte
un seul . Ces arguments sont :

-Liste : liste les fichiers le plus récents que le fichier .temoins dans le répertoire nouvelles.

-Lire : affiche le nom et le contenu de chaque fichier plus récent que .temoins.

-toutlu: met le fichier .temoins a la date courante.

-purge : supprime les fichiers les plus anciens que .temoins.

1.3 Troisieme exercice : le script “sauve.sh”

Dans cet exercice la tache primordiale c’est la sauvegarde du répertoire /home dans

/backup, a l’aide d’un menu interactif afin de choisir l’outil de sauvegarde « tar, cpio
ou rsync )

1
Outils utilisés
2
2.1 L’outil BASH

Les scripts Bash sont un élément extrêmement puissant et utile pour le


développement. Il permet de raccourcir les tâches répétitives en un seul appel de
fonction. De nombreuses commandes longues peuvent être consolidées en un seul
code exécutable.

2.2 L’outil CRON

Crontab est un outil qui permet de lancer des applications de façon régulière,
pratique pour un serveur pour y lancer des scripts de sauvegardes.

2.3 L’outil TAR


Tar est un outil très puissant pour créer et manipuler des archives sous les
systèmes Unix et leurs dérivés dont Linux.

2
2.4 L’outil CPIO
cpio est un outil d'archivage ainsi qu'un format d’archivage utilisé sur UNIX. Il
était conçu à l'origine comme un moyen de sauvegarder des données sur
bande magnetique sur les premières versions d'UNIX.

2.5 L’outil RSYNC


rsync (pour remote synchronization ou synchronisation à distance), est un
logiciel de synchronisation de fichiers. Il est fréquemment utilisé pour mettre
en place des systèmes de sauvegarde distante ou des points de restauration du
système.

2.6 L’outil GEDIT


Gedit est l’editeur de texte officiel d'Ubuntu, et on va l’utiliser pour ecrire nos
script :

3
Application
3
3.1 Exercice 1 : Backup.sh . . . . . . . . . . . . . . . . . . . . . . . . . .5-6

1.1 Realisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2 Test du script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6

1.3 Automatisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.4 Observation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3.2 Exercice 2 : news.sh . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-10

1.1 Realisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-8

1.2 Test du script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10

a. Environnement de fonctionnement du script . . . . . . . . 8

b. Test des arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

c. Test sous differents conditions . . . .. . . . . . . . . . . . . . . . . .10

3.3 Exercice 3 : sauve.sh . . . . . . . . . . . . . . . . . . . . . . . . . .11-14

1.1 Realisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11-12

1.2 Test et verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-14

a. Environnement de fonctionnement du script . . . . . . .13

b. Test des choix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

c. Vérification des résultats . . . . . . . . . . . . . . . . . . . . . . . . . . .10

4
3-1 backup.sh
3.1.1 Realisation :

Pour la première étape on écrit notre script backup.sh sous l’éditeur gedit,
que vous le trouveriez ci-dessous avec des descriptions bref en
commentaires :

2. Dans cette deuxième étape on a ajouté la permission d’exécuter le script au


utilisateur propriétaire du fichier :

3.1.2 test du script :

Afin de tester notre script on affiche le contenu de notre répertoire /home;

On remarque l’absence du répertoire


archives, et aussi pendant l’affichage
du répertoire de test “sauvegarde”
on remarque qu’il est vide

5
2.On exécute notre script, et on réaffiche le contenu du répertoire /home et
sauvegarde ;

On remarque que le répertoire


“archives” a été bien crée, et dans
lequel une archive des fichiers de
configuration du répertoire /etc a été
aussi créé avec le nom
etcConf_11-01-23.tar.gz, cet
archive est aussi existante dans le
répertoire “sauvegarde” grâce à la
commande rsync qui synchronise les
deux répertoires “archives” et
“sauvegarde” chaque fois le script est
exécuté.

3.1.3 Automatisation :

On ouvre crontab en mode


edit et on ajoute la ligne
suivante ;

3.1.4 Observation :
Afin de vérifier le bon fonctionnement de notre tâche, on revient après 3 jours
et on observe les résultats suivants ;
Resultats d’affichage des repertoires
archives et sauvegarde On remarque qu’une archive a été
créé dans le répertoire archives et
sauvegarde le 13 janvier qui
correspond au vendredi à 16:30

2. Contenu de l’archive etcConf_13-01-23.tar.gz

On remarque que tous les fichiers archivées


ont une extension .conf, alors ils sont des
fichiers de configuration.

6
3-2 news.sh
3.2.1 Realisation :

Partie 1 du script ;

J’ai consacré cette partie du script à la vérification des diffèrent conditions d’utilisation
Existence du répertoire nouvelle
Existence du répertoire temoi
vérification du nombre d’arguments utilisés

Partie 2 du script ;

C’est la partie fonctionnelle du script où vous allez trouver la fonction de chaque argument
avec une description bref en commentaire.

7
Intégralité du script news.sh

Affectation de la permisssion d’execution

3.2.2 Test et verification :


a. Environnement de fonctionnement du script

Le contenu du répertoire nouvelles avec


un nom de fichier par ligne, du plus
ancien au plus récent

8
b. Test des arguments

L’argument -lire et -liste

Pour l’argument -liste le script a affiché

tous les fichiers que sont plus récent que

temoin

Pour l’argument -lire le script a affiché

le noms et le contenu de chaque fichier

plus recents que temoin

L’argument purge

Apres l’exécution du script

news.sh avec l’argument purge

on remarque que tous les fichiers

que sont plus ancien que temoin

ont été bien supprimés

L’argument toutlu

Apres l’exécution du script

news.sh avec l’argument toutlu,

on remarque que le fichier temoin

a reçu la date actuel, et devenu le

plus récent.

9
c. Test sous differents conditions ;

Dans les cas d’utilisation

D’aucun argument

De plusieurs argument

D’un mauvais argument

Dans les cas

D’absence du fichier temoi

D’absence du repertoire nouvelles

10
3-3 sauve.sh
3.3.1 Realisation :
Partie 1 du script ;

C’est la partie interractif du script, responsable de l’affichage d’un menu des differents
choix possible, et de la recuperation du choix d’utilisateur .

Partie 2 du script ;

C’est la partie fonctionnelle du script où vous allez trouver la fonction de chaque choix avec
une bref description en commentaire.

11
Intégralité du script news.sh

Affectation de la permisssion d’execution

12
3.2.2 Test et verification :

a. Environnement de fonctionnement du script

La création des répertoires backup et

copie-home

b. Test de fonctionnement des choix

Premier choix

Deuxieme choix

Troisieme choix

Dernier choix

13
Mauvais choix

c. Vérification des résultats

Deux archives compressées ont été créées dans le répertoires backup

On remarque que le contenu des deux répertoires /home et copie-home


est similaire, c’est grâce à la synchronisation “troisième choix”

14

Vous aimerez peut-être aussi