DevOpsFacile
AccueilParcours de formationCertificationsModulesCheat SheetÀ Propos
DevOpsFacile

Une plateforme d'apprentissage complète pour maîtriser les pratiques DevOps modernes, du débutant à l'expert.

contact@devopsfacile.fr

Formation

  • Parcours de formation
  • Modules

Informations

  • À Propos
  • Conditions d'utilisation
  • Confidentialité
  • Mentions légales

© 2026 DevOps Facile. Tous droits réservés.

Fait avec pour la communauté DevOps

ModulesMaîtriser Linux : permissions, processus et paquets

Module

Maîtrisez les permissions, les processus, les redirections et la gestion des paquets sous Linux.

  • 1h30
  • Intermédiaire
  • 4 exercices
Voir les exercices

Formation 100 % Linux

Tous les modules nécessitent un environnement Linux. Si vous êtes sur Windows, installez d'abord WSL (Windows Subsystem for Linux) avant de continuer.

Maîtriser Linux : permissions, processus et paquets


🎯 Objectifs

  • ✅ Comprendre et modifier les permissions de fichiers
  • ✅ Gérer les processus système
  • ✅ Maîtriser les redirections et les pipes
  • ✅ Configurer les variables d'environnement
  • ✅ Installer et gérer des paquets avec APT
  • ✅ Utiliser les commandes réseau essentielles

📌 Prérequis

Ce module suppose que vous maîtrisez le contenu du module Linux Débutant : navigation, gestion des fichiers, lecture et recherche.


🔐 Permissions

Chaque fichier possède 3 niveaux de permission pour 3 catégories :

SymbolePermissionValeur
rLecture4
wÉcriture2
xExécution1

Les 3 catégories : propriétaire (u), groupe (g), autres (o).

Permissions courantes

ValeurSignificationUsage typique
755rwxr-xr-xScripts, dossiers
644rw-r--r--Fichiers de config
600rw-------Clés SSH, secrets
700rwx------Dossier .ssh/

Modifier les permissions

bash
# Notation numérique
chmod 755 deploy.sh
chmod 600 ~/.ssh/id_rsa

# Notation symbolique
chmod +x script.sh           # Ajouter exécution pour tous
chmod u+w,g-w fichier.txt    # Écriture pour owner, retirer pour groupe

Changer le propriétaire

bash
chown devops_user:devops fichier.txt # Utilisateur + groupe
chown -R www-data:www-data /var/www # Récursif

⚠️ Les clés SSH doivent être en 600, sinon SSH refusera de les utiliser.


⚙️ Processus

Voir les processus

bash
ps aux                    # Tous les processus
ps aux | grep nginx       # Filtrer par nom
top                       # Moniteur en temps réel
htop                      # Version améliorée (à installer)

Processus en arrière-plan

bash
./script.sh &             # Lancer en arrière-plan
jobs                      # Lister les jobs
fg %1                     # Ramener au premier plan

Arrêter un processus

bash
kill 1234                 # Arrêt propre (SIGTERM)
kill -9 1234              # Arrêt forcé (SIGKILL)
pkill nginx               # Tuer par nom

Informations système

bash
free -h                   # Mémoire RAM disponible
df -h                     # Espace disque
du -sh /var/log/          # Taille d'un dossier
uptime                    # Temps de fonctionnement

💡 htop est bien plus lisible que top. Installez-le avec sudo apt install htop.


🔀 Redirections et Pipes

Les 3 flux standard

FluxNuméroDescription
stdin0Entrée standard (clavier)
stdout1Sortie standard (écran)
stderr2Sortie d'erreur

Redirections

bash
echo "Hello" > fichier.txt       # Écrire (écrase)
echo "World" >> fichier.txt      # Ajouter à la fin
ls /inexistant 2> erreurs.log    # Rediriger les erreurs
ls /tmp /inexistant &> tout.log  # Tout rediriger
cmd 2>/dev/null                  # Ignorer les erreurs

Pipes |

Le pipe envoie la sortie d'une commande vers l'entrée de la suivante :

bash
ls -la | wc -l                          # Compter les fichiers
ps aux | grep python                    # Filtrer les processus
cat access.log | sort | uniq -c | sort -rn | head
#                                       # Top des lignes les plus fréquentes

Exemple concret - trouver les 5 plus gros fichiers de log :

bash
du -sh /var/log/* | sort -rh | head -5

💡 Les pipes sont l'outil le plus puissant du terminal. Combinez des commandes simples pour créer des traitements complexes.


🌍 Variables d'Environnement

Variables essentielles

VariableDescriptionExemple
$HOMERépertoire personnel/home/devops_user
$PATHChemins des exécutables/usr/local/bin:/usr/bin
$USERUtilisateur courantdevops_user
$SHELLShell par défaut/bin/bash
$EDITORÉditeur par défautvim ou nano

Manipuler les variables

bash
echo $HOME                        # Afficher une variable
env                               # Lister toutes les variables
export MA_VAR="valeur"            # Définir pour la session
unset MA_VAR                      # Supprimer

Le $PATH

Le $PATH indique où le système cherche les exécutables :

bash
echo $PATH
# /usr/local/bin:/usr/bin:/bin

# Ajouter un chemin temporairement
export PATH="$HOME/.local/bin:$PATH"

Rendre permanent

Ajoutez vos variables dans ~/.bashrc :

bash
echo 'export EDITOR="vim"' >> ~/.bashrc
source ~/.bashrc    # Recharger

⚠️ Ne stockez jamais de mots de passe ou de tokens dans ~/.bashrc. Utilisez un gestionnaire de secrets.


📦 Gestion des Paquets (APT)

APT est le gestionnaire de paquets de Debian/Ubuntu :

bash
sudo apt update                   # Mettre à jour la liste des paquets
sudo apt upgrade                  # Mettre à jour les paquets installés
sudo apt install nginx            # Installer un paquet
sudo apt remove nginx             # Désinstaller
sudo apt search "web server"      # Rechercher un paquet
sudo apt autoremove               # Nettoyer les dépendances inutiles

💡 Lancez toujours apt update avant apt install pour avoir les dernières versions.


🌐 Réseau

Commandes essentielles

bash
ip addr                           # Adresses IP de la machine
ping -c 4 google.com              # Tester la connectivité
ss -tlnp                          # Ports en écoute
curl -I https://example.com       # En-têtes HTTP
curl -s https://api.example.com   # Requête API silencieuse

SSH - Connexion distante

bash
ssh user@192.168.1.100            # Se connecter
scp fichier.txt user@host:/tmp/   # Copier un fichier

Générer une clé SSH

bash
ssh-keygen -t ed25519 -C "devops_user@example.com"
# Clé privée : ~/.ssh/id_ed25519
# Clé publique : ~/.ssh/id_ed25519.pub

💡 Préférez ed25519 à rsa - plus sûr et plus rapide.


📋 Points Clés

ConceptÀ retenir
Permissionschmod 755 pour scripts, 600 pour secrets
Processusps aux, kill, htop
Redirections> écrase, >> ajoute, 2> erreurs
Pipescmd1 | cmd2 - chaîner les commandes
Variablesexport VAR="val", persister dans .bashrc
Paquetsapt update && apt install
Réseauip addr, ss -tlnp, ssh, curl

🏋️ Exercices du module

  1. Naviguer et explorer le système de fichiers - Parcourir l'arborescence, lister des fichiers
  2. Gérer les fichiers et répertoires - Créer, copier, déplacer, supprimer
  3. Permissions et propriété des fichiers - chmod, chown, droits utilisateurs
  4. Processus et monitoring système - ps, top, kill, surveillance
  5. Flux, pipes et traitement de texte - stdin, stdout, grep, sed
  6. Projet Capstone : Déployer et surveiller un serveur web Nginx - APT, permissions web, processus, env vars, réseau et analyse de logs

📚 Ressources

  • Permissions Linux - Wiki Ubuntu
  • SSH - Guide complet
  • ExplainShell

🚀 Prochaines étapes

Vous gérez maintenant les permissions et les processus Linux. Passez au niveau supérieur :

  1. Scripting Bash et administration système Linux - Scripting Bash, traitement de texte et administration système

Exercices Pratiques

4 exercices pour mettre en pratique

01

03 - Permissions et propriété des fichiers

20 minutesIntermédiaire
02

04 - Processus et monitoring système

20 minutesIntermédiaire
03

05 - Flux, pipes et traitement de texte

20 minutesIntermédiaire
04

07 - Projet Capstone : Déployer et surveiller un serveur web Nginx

45 minutesAvancé
Retour aux modules

Sur cette page

  • 🎯 Objectifs
  • 📌 Prérequis
  • 🔐 Permissions
  • Permissions courantes
  • Modifier les permissions
  • Changer le propriétaire
  • ⚙️ Processus
  • Voir les processus
  • Processus en arrière-plan
  • Arrêter un processus
  • Informations système
  • 🔀 Redirections et Pipes
  • Les 3 flux standard
  • Redirections
  • Pipes |
  • 🌍 Variables d'Environnement
  • Variables essentielles
  • Manipuler les variables
  • Le $PATH
  • Rendre permanent
  • 📦 Gestion des Paquets (APT)
  • 🌐 Réseau
  • Commandes essentielles
  • SSH - Connexion distante
  • Générer une clé SSH
  • 📋 Points Clés
  • 🏋️ Exercices du module
  • 📚 Ressources
  • 🚀 Prochaines étapes