Commandes Linux - Maîtriser les Bases Essentielles
Ce PDF gratuit présente un condensé des commandes de base pour les systèmes d'exploitation Linux et Unix, extrait du manuel officiel. Il couvre les compétences essentielles pour maîtriser l'interface en ligne de commande, destiné aux débutants comme aux utilisateurs avancés souhaitant se familiariser avec les fondamentaux. Les thèmes abordés incluent l'exécution de commandes, la manipulation des répertoires et fichiers, ainsi que la gestion des droits et permissions. Le document explique également les techniques d'affichage, l'édition de flux et fichiers, ainsi que la configuration de l'environnement de travail. En plus des bases, ce cours aborde des aspects plus avancés tels que la gestion des processus, des disques et partitions, ainsi que l'exécution différée ou programmée de tâches. Une section est dédiée à l'archivage, utile pour la sauvegarde et la compression de données. Bien que pratique, ce document ne remplace pas le manuel Unix complet (accessible via la commande `man`). Il sert plutôt de guide rapide pour une prise en main efficace du terminal, offrant une référence claire et structurée pour les opérations courantes sous Linux/Unix.
Contenus explorés en détail
Ce cours couvre les commandes fondamentales pour interagir avec un système UNIX/Linux. Vous apprendrez à naviguer dans l’arborescence des répertoires, manipuler des fichiers, gérer les permissions et exécuter des processus. Les commandes essentielles comme ls
, cd
, mkdir
, rm
, chmod
, grep
, et cron
seront expliquées en détail. Vous découvrirez également comment archiver des fichiers, gérer les entrées/sorties et automatiser des tâches.
- Maîtriser la navigation et la manipulation des fichiers/répertoires
- Comprendre et appliquer les droits d’accès et permissions
- Automatiser des tâches avec des commandes programmées
Public concerné par ce PDF
Ce document s’adresse aux débutants en administration système, aux développeurs souhaitant mieux comprendre l’environnement UNIX/Linux, et aux professionnels de l’informatique cherchant un rappel des commandes de base. Les étudiants en informatique, les administrateurs systèmes juniors et les utilisateurs techniques de serveurs Linux y trouveront une ressource précieuse pour démarrer ou consolider leurs compétences en ligne de commande.
Exemples pratiques et applications réelles
Les commandes de base sont utilisées quotidiennement pour administrer des serveurs, automatiser des tâches ou dépanner des systèmes. Par exemple, grep
permet de filtrer des logs pour trouver des erreurs, tandis que cron
planifie des sauvegardes automatiques. Un scénario typique : un administrateur utilise chmod
pour sécuriser un fichier contenant des données sensibles, puis archive ce fichier avec tar
pour le transférer vers un serveur distant.
Secteurs d'application professionnelle
- Administration système : Gestion des serveurs et maintenance des infrastructures. Exemple : utiliser
top
pour surveiller les processus en temps réel. - Développement logiciel : Automatisation des tests et déploiements. Exemple : un script Bash utilisant
rsync
pour déployer du code. - Cybersécurité : Audit des permissions et analyse des logs. Exemple : vérifier les fichiers modifiés récemment avec
find
.
awk
). Guide des termes importants
- Shell : Interface en ligne de commande pour interagir avec le système d’exploitation.
- Terminal : Application permettant d’accéder au shell.
- Root : Compte administrateur avec des privilèges étendus.
- Processus : Programme en cours d’exécution.
- Pipeline (|) : Redirige la sortie d’une commande vers l’entrée d’une autre.
- Permission : Droit d’accès (lecture, écriture, exécution) sur un fichier/répertoire.
- Cron : Service pour planifier des tâches répétitives.
- SSH : Protocole de connexion sécurisée à distance.
- Archive (tar.gz) : Fichier compressé regroupant d’autres fichiers.
- Variable d’environnement : Paramètre système dynamique utilisé par les processus.
Réponses aux questions fréquentes
Comment lister les fichiers dans un répertoire ?
Utilisez ls
. Ajoutez -l
pour un format détaillé ou -a
pour afficher les fichiers cachés.
Comment changer les permissions d’un fichier ?
Avec chmod
. Par exemple, chmod 755 fichier.txt
donne tous les droits au propriétaire et lecture/exécution aux autres.
Comment rechercher du texte dans un fichier ?
La commande grep "mot" fichier.txt
affiche les lignes contenant "mot".
Comment planifier une tâche automatique ?
Éditez le fichier crontab -e
et ajoutez une ligne comme * * * * * /chemin/script.sh
pour une exécution toutes les minutes.
Comment compresser un dossier ?
Utilisez tar -czvf archive.tar.gz dossier/
pour créer une archive compressée.
Exercices appliqués et études de cas
Projet 1 : Automatisation de sauvegarde
1. Créez un script Bash utilisant tar
pour archiver un dossier. 2. Ajoutez une tâche cron pour exécuter ce script tous les jours à minuit. 3. Testez en modifiant un fichier et vérifiez l’archive générée.
Projet 2 : Audit de sécurité
1. Listez tous les fichiers modifiés dans les dernières 24h avec find
. 2. Vérifiez leurs permissions via ls -l
. 3. Identifiez les fichiers avec des permissions trop permissives (ex : chmod 777
) et corrigez-les.
Étude de cas : Migration de serveur
1. Utilisez rsync
pour copier des fichiers vers un nouveau serveur. 2. Comparez les checksums (md5sum
) pour vérifier l’intégrité. 3. Configurez une redirection temporaire avec un lien symbolique (ln -s
).
L'utilisation de ce document ne remplace pas la consultation du manuel UNIX (voir commande man), d'où il est tiré (c'est en fait un condensé de la version française du manuel Linux)
- Exécution de commandes
- Manipulation des répertoires
- Manipulation des fichiers
- Droits & permissions
- Affichage
- Édition de flux d'entrée / sortie et de fichier
- Environnement de travail
- gestion des processus
- Gestion des disques et partitions
- Exécution différées & programmées
- Archivage
Shell - Maîtriser les interpréteurs de commandes
MS-DOS - Maîtriser les commandes essentielles
Systèmes de gestion de base de données - Maîtriser les fondamentaux
Bases de données - Maîtriser les fondamentaux SQL
Bases de données - Maîtriser les fondamentaux SQL
PHP : Base de données - Maîtriser les fondamentaux MySQL