Développement de Scripts et Automatisation sur Linux/Unix
Public cible: administrateurs systèmes
Prérequis:
Durée de la Formation
Total : 5 jours (40 heures)
Objectifs de la Formation
Comprendre les bases des systèmes d'exploitation Linux/Unix.
Maîtriser la création et l'exécution de scripts shell.
Automatiser des tâches courantes sur Linux/Unix.
Utiliser des outils de gestion de tâches automatisées comme cron et systemd.
Jour 1 : Introduction à Linux/Unix et au Scripting Shell
Matin : Introduction à Linux/Unix
Historique et distribution de Linux/Unix
Concepts fondamentaux : noyau, shell, système de fichiers
Commandes de base :
ls
,cd
,pwd
,mkdir
,rm
,cp
,mv
Après-midi : Introduction au Scripting Shell
Qu'est-ce qu'un script shell ?
Structure d'un script : shebang, commentaires
Écrire et exécuter son premier script
Variables et opérateurs
Les permissions de fichiers (
chmod
)
Lab 1 : Premiers Scripts Shell
Création d'un script simple pour afficher "Hello, World!".
Écriture d'un script pour lister les fichiers d'un répertoire et afficher leur taille.
Jour 2 : Gestion des Fichiers et Flux de Données
Matin : Gestion Avancée des Fichiers
Redirections d'entrée/sortie (
>
,>>
,<
,|
)Utilisation des commandes
cat
,head
,tail
,sort
,uniq
Gestion des archives avec
tar
,gzip
,bzip2
Après-midi : Traitement de Texte
Commandes
grep
,sed
,awk
Expressions régulières
Recherche et remplacement dans des fichiers
Lab 2 : Manipulation des Fichiers et Traitement de Texte
Écriture d'un script pour archiver et compresser des fichiers.
Script pour analyser des fichiers log et extraire des informations spécifiques.
Jour 3 : Structures de Contrôle et Fonctions
Matin : Structures de Contrôle
Instructions conditionnelles :
if
,else
,elif
Boucles :
for
,while
,until
Commandes
case
Après-midi : Fonctions et Debugging
Définition et appel de fonctions
Paramètres de fonctions
Techniques de debugging (
set -x
,trap
)
Lab 3 : Scripts Avancés
Script avec des conditions pour vérifier l'état du système (espace disque, utilisation CPU).
Création d'un script avec des fonctions pour modulariser le code.
Jour 4 : Automatisation et Planification de Tâches
Matin : Cron et Anacron
Introduction à
cron
etanacron
Syntaxe des fichiers
crontab
Planification de tâches récurrentes
Après-midi : Systemd
Introduction à
systemd
et aux servicesCréation de fichiers unitaires pour automatiser des scripts
Gestion des services (
start
,stop
,enable
,disable
)
Lab 4 : Planification de Tâches
Mise en place d'un job cron pour effectuer une sauvegarde quotidienne.
Création d'un service systemd pour lancer un script à l'initialisation du système.
Jour 5 : Projet Final et Mise en Pratique
Matin : Projet de Fin de Formation
Présentation du projet : Automatisation d'un processus complet (ex. sauvegarde, monitoring, nettoyage)
Conception du script et planification des tâches
Après-midi : Réalisation du Projet et Évaluation
Développement, test et débogage du script
Mise en place de la planification des tâches
Présentation du projet aux formateurs et aux autres participants
Lab 5 : Projet Final
Application des connaissances acquises pour créer un script automatisé complet.
Configuration de la planification des tâches associées.
Ressources et Supports Pédagogiques
Accès à un environnement de développement Linux (VM ou Docker)
Documentation et tutoriels en ligne
Support et assistance pendant les labos
Évaluation
Évaluations continues à travers les labos pratiques
Évaluation finale basée sur le projet réalisé
Conclusion
Cette formation permet aux participants de maîtriser le développement de scripts shell et l'automatisation sur Linux/Unix, en alliant théorie et pratique à travers des exercices et projets concrets.
Last updated