Guide complet des commandes UNIX de base

Table des matières :

  1. Introduction à UNIX et ses commandes fondamentales
  2. Manipulation des fichiers et répertoires
  3. Archivage et compression des fichiers
  4. Gestion des processus et exécution en arrière-plan
  5. Planification et lancement des tâches programmées
  6. Gestion de la mémoire et des systèmes de fichiers
  7. Sécurité et contrôle des processus
  8. Utilisation des filtres et redirections
  9. Optimisation du workflow UNIX
  10. Applications concrètes et scénarios d’utilisation
  11. Glossaire des termes techniques
  12. Conseils pour apprendre et approfondir UNIX

Introduction à UNIX et ses commandes fondamentales

Ce PDF propose une introduction détaillée aux commandes de base d'UNIX, une plateforme reconnue pour sa stabilité, sa sécurité et sa flexibilité dans la gestion informatique. Il donne une vue d'ensemble des outils indispensables pour manipuler efficacement fichiers, répertoires, processus, et tâches automatisées. Conçu pour les débutants et les utilisateurs intermédiaires, le document offre des explications claires, des exemples pratiques, et des conseils pour maitriser l'environnement UNIX. Que vous souhaitiez explorer la gestion de fichiers, automatiser des tâches ou comprendre la structure du système, ce guide constitue une ressource précieuse pour étoffer vos compétences en administration et utilisation UNIX.


Sujets abordés en détail

  • Manipulation des fichiers : commandes pour créer, supprimer, copier, et déplacer des fichiers et répertoires, avec des options pour confirmer ou forcer des actions.
  • Gestion des répertoires : navigation, listing, et navigation dans l’arborescence UNIX.
  • Archivage et compression : utilisation de gzip, bzip2, tar, pour compresser ou décompresser des données, et archiver plusieurs fichiers.
  • Planification des tâches : utilisation de cron et at pour exécuter automatiquement des scripts ou commandes à des heures spécifiques.
  • Gestion des processus : contrôle et signalisation, notamment avec kill, killall, etc.
  • Redirection et édition de flux d’entrée/sortie : utilisation de pipes, tee, sort, pour manipuler le flux de données entre commandes.
  • Montage des systèmes de fichiers : gestion des disques, partitions, systèmes de fichiers, avec mount et df.
  • Automatisation et scripting : différentes techniques pour automatiser des opérations récurrentes sous UNIX.

Concepts clés expliqués

1. Archivage et compression

Les outils tels que gzip, gunzip, bzip2, bunzip2, et tar permettent de réduire la taille des fichiers ou de créer des archives pour transférer ou sauvegarder. gzip utilise l’algorithme LZ77, efficace pour les fichiers volumineux, en remplaçant chaque fichier par une version compressée avec une extension .gz. bzip2 offre souvent de meilleurs taux de compression grâce à un algorithme différent. Tar quant à lui regroupe plusieurs fichiers en une seule archive, facilitant la gestion ou la transmission de collections de fichiers. La maîtrise de ces outils est essentielle pour tout utilisateur ou administrateur UNIX.

2. Gestion des processus et signalisation

Les commandes comme kill, killall, et la gestion des signaux permettent de contrôler l’exécution des processus. Par exemple, le signal HUP peut demander à un service de relire son fichier de configuration sans le redémarrer complètement. La compréhension des signaux UNIX est cruciale pour l’administration système, notamment pour arrêter, relancer ou redémarrer des services en toute sécurité.

3. Planification des tâches automatisées

L’outil crontab permet de programmer des tâches récurrentes, comme des sauvegardes ou des mises à jour, à des intervalles précis. Avec des syntaxes flexibles, il est possible d’indiquer l’heure exacte d’exécution ou de planifier des travaux à une date spécifique avec at. La maîtrise de ces commandes assure une gestion efficace des opérations automatisées, essentielle dans un environnement de production.

4. Manipulation avancée de fichiers et flux

Le piping (|) combine la sortie d’une commande avec l’entrée d’une autre, permettant des opérations complexes en chaînant des commandes. Par exemple, dmesg | tee monlog | less affiche, enregistre dans un fichier, et visualise la sortie du journal système. Ces techniques augmentent significativement la flexibilité dans le traitement des données.

5. Montage et gestion de disques

La commande mount attache un système de fichiers à l’arborescence UNIX, tandis que df fournit un aperçu de l’espace disque utilisé. Comprendre ces outils est indispensable pour gérer le stockage, les partitions, et assurer la stabilité du système.


Applications et cas d’usage concrets

Les connaissances en commandes UNIX sont essentielles dans de nombreux scénarios professionnels. Par exemple, un administrateur système utilise tar et gzip pour archiver et compresser des sauvegardes de serveurs, en automatisant ces processus avec cron. Lorsqu’un service Linux doit être redémarré pour appliquer une nouvelle configuration, il emploie kill ou killall avec le signal HUP. Un développeur peut utiliser les pipes pour analyser des logs en temps réel ou filtrer des données pour générer des rapports. En gestion des disques, monter des partitions pour l’accès aux fichiers ou utiliser df pour surveiller l’espace disque est courant. La maîtrise de ces outils permet d’assurer la sécurité, la performance, et la disponibilité d’un environnement UNIX.


Glossaire des termes clés

  • gzip : outil de compression utilisant l’algorithme LZ77.
  • tar : utilitaire pour archiver plusieurs fichiers en un seul fichier.
  • crontab : outil pour programmer des tâches récurrentes.
  • at : commande pour exécuter des tâches à une heure précise.
  • signal : message envoyé à un processus pour lui demander une action spécifique.
  • montage : attacher un système de fichiers à l’arborescence UNIX.
  • pipe (|) : opérateur permettant de connecter la sortie d’une commande à l’entrée d’une autre.
  • sysfichier (/etc/fstab) : fichier de configuration des systèmes de fichiers.
  • bzip2 : outil de compression offrant souvent de meilleurs taux que gzip.
  • ls : commande pour lister le contenu d’un répertoire.
  • du : affiche la taille d’un répertoire ou fichier.
  • df : affiche l’espace disque utilisé et disponible.

À qui s’adresse ce PDF ?

Ce guide s’adresse principalement aux utilisateurs débutants en UNIX, étudiants en informatique, administrateurs systèmes, ou toute personne souhaitant maîtriser les commandes de base du système UNIX/Linux. Il est idéal pour ceux qui débutent dans la gestion des systèmes, car il présente des concepts fondamentaux avec des exemples concrets. Les professionnels peuvent également y trouver des rappels utiles pour optimiser leur workflow, automatiser des tâches ou dépanner un système. En somme, ce document est une ressource pédagogique essentielle pour comprendre et appliquer les commandes UNIX de façon efficace.


Comment utiliser efficacement ce PDF ?

Pour tirer le meilleur parti de ce guide, il est conseillé de lire chaque section en pratiquant directement dans un terminal UNIX. Expérimentez avec les exemples donnés, modifiez les options et observez le comportement des commandes. N’hésitez pas à compléter vos apprentissages avec la consultation des pages man (man <commande>) pour approfondir chaque sujet. La création de scripts simples intégrant plusieurs commandes apprises ici peut également renforcer votre maîtrise. Enfin, utilisez ce document comme un référentiel pour revenir rapidement à une commande ou une technique spécifique lors de votre travail quotidien.


FAQ et questions fréquentes

Q : Quelle est la différence entre gzip et bzip2 ? R : gzip utilise l’algorithme LZ77, plus rapide mais souvent moins efficace en termes de taux de compression. Bzip2 offre généralement une meilleure compression, mais peut être plus lent, atout pour réduire la taille des fichiers importants.

Q : Comment compresser un fichier sous UNIX ? Pour compresser un fichier, vous pouvez utiliser la commande gzip en tapant gzip nomfichier. Cela remplacera le fichier original par une version compressée avec l’extension .gz. Si vous souhaitez décompresser, utilisez gunzip nomfichier.gz. Ces outils utilisent des algorithmes de type LZ77, très efficaces pour réduire la taille des fichiers.

Q : Comment créer une archive d’un répertoire avec tar ? Pour archiver un répertoire, utilisez la commande tar -cvf archive.tar répertoire. L’option -c crée une archive, -v affiche le contenu en détail, et -f spécifie le fichier d’archive. Pour restaurer cette archive, utilisez tar -xvf archive.tar.

Q : Comment programmer une tâche automatique sur UNIX ? Utilisez la commande crontab -e pour éditer la table de planification. Ajoutez une ligne avec la syntaxe min heure jour mois jour_de_la_semaine commande. Par exemple, pour exécuter un script tous les jours à 2h du matin, écrivez 0 2 * * * /chemin/vers/script.sh. Le démon cron lancera automatiquement votre tâche.

Q : Quelle commande utiliser pour voir l’espace disque utilisé par un répertoire ? La commande du -sh répertoire affiche la taille totale du répertoire dans un format lisible (Ko, Mo, Go). Si vous souhaitez obtenir une liste détaillée par sous-répertoire, utilisez simplement du -h.

Q : Comment rechercher une commande ou une fonction UNIX spécifique ? Utilisez apropos mot_clé ou whatis mot_clé pour rechercher les commandes liées à un mot clé. Par exemple, apropos réseau liste toutes les commandes associées à la gestion réseau. Pour consulter la documentation complète, utilisez man nom_commande.


Exercices et projets

Ce PDF ne comprend pas de section spécifique sur des exercices ou projets. Cependant, en lien avec le contenu, voici des idées de projets pour approfondir l’utilisation des commandes UNIX :

  1. Script de sauvegarde automatique utilisant tar, gzip et cron.
  2. Création d’un système d’analyse d’utilisation du disque avec du du et sort.
  3. Automatisation de la recherche de commandes dans le manuel avec un script interactif.
  4. Mise en place d’un système de planification pour exécuter régulièrement des scripts de nettoyage ou de rapport.
  5. Développement d’un outil pour explorer et manipuler plus efficacement les fichiers via cprmmkdir et autres commandes.

Pour chaque projet, il est conseillé de commencer par définir clairement l’objectif, écrire un script étape par étape, puis le tester dans un environnement contrôlé. Utilisez la documentation (manuels) et pratiquez régulièrement pour maîtriser l’automatisation UNIX.

Mis à jour le 28 Apr 2025


Auteur: Thierry Vaira

Type de fichier : PDF

Pages : 12

Téléchargement : 5638

Niveau : Débutant

Taille : 144.56 Ko