Lab 3.1 - Navigation et Création dans le Système de Fichiers
Objectifs
À la fin de ce lab, vous serez capable de:
- Naviguer dans le système de fichiers Linux
- Créer des fichiers et répertoires
- Comprendre la structure FHS (Filesystem Hierarchy Standard)
- Utiliser les commandes de base (cd, ls, mkdir, touch, etc.)
- Manipuler les fichiers et répertoires
Prérequis
- Ubuntu 24.04 installé et fonctionnel
- Terminal ouvert
- Accès utilisateur normal (pas besoin de root pour la plupart des exercices)
Exercice 1: Navigation de Base
Étape 1: Répertoires Importants
# Voir le répertoire actuel
pwd
# Aller dans le répertoire home
cd ~
# ou
cd $HOME
# Voir le contenu
ls
# Voir avec détails
ls -l
# Voir les fichiers cachés aussi
ls -la
Étape 2: Structure FHS
# Aller à la racine
cd /
# Voir la structure
ls -la /
# Explorer les répertoires importants
ls /bin # Binaires essentiels
ls /usr/bin # Binaires utilisateur
ls /etc # Fichiers de configuration
ls /var # Données variables
ls /home # Répertoires utilisateurs
ls /tmp # Fichiers temporaires
Question: Quels sont les répertoires principaux que vous voyez?
Étape 3: Navigation Relative et Absolue
# Chemin absolu (depuis la racine)
cd /home/$USER
# Chemin relatif (depuis le répertoire actuel)
cd Documents # Si Documents existe dans le répertoire actuel
# Retourner au répertoire précédent
cd -
# Remonter d'un niveau
cd ..
# Remonter de deux niveaux
cd ../..
Exercice 2: Création de Répertoires
Étape 1: Créer des Répertoires
# Créer un répertoire
mkdir mon-lab
# Créer plusieurs répertoires
mkdir dir1 dir2 dir3
# Créer une arborescence
mkdir -p projet/src projet/docs projet/tests
# Vérifier
tree projet
# Si tree n'est pas installé:
# sudo apt install tree
Étape 2: Structure Organisée
# Créer une structure pour un projet
mkdir -p ~/projets/linux-lab/{docs,scripts,data,backup}
# Voir la structure
tree ~/projets/linux-lab
# Ou avec ls
ls -R ~/projets/linux-lab
Exercice 3: Création de Fichiers
Étape 1: Méthodes de Création
# Méthode 1: touch (fichier vide)
touch fichier1.txt
# Méthode 2: echo
echo "Contenu du fichier" > fichier2.txt
# Méthode 3: cat avec heredoc
cat > fichier3.txt << EOF
Ligne 1
Ligne 2
Ligne 3
EOF
# Méthode 4: Éditeur
nano fichier4.txt
# Écrire du texte, Ctrl+O pour sauvegarder, Ctrl+X pour quitter
Étape 2: Vérifier les Fichiers
# Voir les fichiers créés
ls -lh
# Voir le contenu
cat fichier2.txt
# Compter les lignes
wc -l fichier3.txt
# Voir les premières lignes
head -2 fichier3.txt
# Voir les dernières lignes
tail -2 fichier3.txt
Exercice 4: Manipulation de Fichiers
Étape 1: Copier et Déplacer
# Créer un répertoire de test
mkdir test-files
cd test-files
# Créer un fichier
echo "Test" > original.txt
# Copier
cp original.txt copie.txt
# Copier vers un autre répertoire
cp original.txt ~/Documents/
# Copier un répertoire
cp -r ~/mon-lab ~/mon-lab-backup
# Déplacer (renommer)
mv original.txt renomme.txt
# Déplacer vers un autre répertoire
mv renomme.txt ~/Documents/
Étape 2: Supprimer
# Supprimer un fichier
rm fichier1.txt
# Supprimer plusieurs fichiers
rm fichier2.txt fichier3.txt
# Supprimer un répertoire vide
rmdir dir-vide
# Supprimer un répertoire avec contenu
rm -r mon-lab
# Supprimer avec confirmation
rm -ri projet/
Attention: rm -r supprime définitivement! Pas de corbeille.
Exercice 5: Recherche de Fichiers
Étape 1: find
# Trouver tous les fichiers .txt dans le répertoire actuel
find . -name "*.txt"
# Trouver dans tout le système (peut être long)
find / -name "fichier.txt" 2>/dev/null
# Trouver les fichiers modifiés récemment
find ~ -mtime -1 # Dernières 24h
# Trouver les fichiers plus gros que 1MB
find ~ -size +1M
Étape 2: locate (si installé)
# Installer locate
sudo apt update
sudo apt install mlocate
# Mettre à jour la base de données
sudo updatedb
# Rechercher
locate fichier.txt
Exercice 6: Pratique Complète
Étape 1: Créer une Structure de Projet
# Créer la structure
mkdir -p ~/projet-linux/{src/{scripts,config},docs,logs,backup}
# Créer des fichiers
touch ~/projet-linux/src/scripts/script1.sh
touch ~/projet-linux/src/config/config.conf
echo "Log initial" > ~/projet-linux/logs/app.log
# Voir la structure
tree ~/projet-linux
Étape 2: Organiser les Fichiers
cd ~/projet-linux
# Créer des fichiers de test
touch test1.txt test2.txt test3.txt
# Créer un répertoire pour les tests
mkdir tests
# Déplacer les fichiers de test
mv test*.txt tests/
# Vérifier
ls -R
Exercice 7: Commandes Utiles
Étape 1: Informations sur les Fichiers
# Type de fichier
file fichier.txt
file /bin/ls
# Taille du fichier
du -h fichier.txt
# Taille d'un répertoire
du -sh ~/projet-linux
# Espace disque
df -h
Étape 2: Liens Symboliques
# Créer un lien symbolique
ln -s ~/projet-linux/src/scripts/script1.sh ~/script1-link
# Voir le lien
ls -l ~/script1-link
# Suivre le lien
readlink -f ~/script1-link
Vérification
Checklist
Vérifiez que vous pouvez:
- Naviguer dans le système de fichiers (cd, pwd)
- Voir le contenu des répertoires (ls avec options)
- Créer des répertoires (mkdir, mkdir -p)
- Créer des fichiers (touch, echo, cat, nano)
- Copier et déplacer des fichiers (cp, mv)
- Supprimer des fichiers et répertoires (rm, rmdir)
- Rechercher des fichiers (find, locate)
- Comprendre la structure FHS
Questions de Réflexion
-
Quelle est la différence entre chemin absolu et relatif?
- Absolu: commence par
/(depuis la racine) - Relatif: depuis le répertoire actuel
- Absolu: commence par
-
Pourquoi utiliser
mkdir -p?- Crée les répertoires parents si nécessaire
- Évite les erreurs si le répertoire existe déjà
-
Quelle est la différence entre
rmetrmdir?rm: supprime fichiers et répertoires (avec -r)rmdir: supprime seulement répertoires vides
Prochaines Étapes
- Lab 3.2: Gestion des Permissions
- Lab 3.3: Recherche et Liens
- Chapitre 3.2: Structure des Répertoires
Ressources Ubuntu 24.04
- Ubuntu Documentation
- Filesystem Hierarchy Standard
- Commandes:
man commandepour l'aide
Lab créé le: Décembre 2024 - Testé sur Ubuntu 24.04