Commande Linux whereis : Localisation de fichiers et de commandes

LinuxBeginner
Pratiquer maintenant

Introduction

Bienvenue au département d'administration système de TechCorp ! En tant que nouvel administrateur système junior, votre mission est de maîtriser la commande whereis. Cet outil puissant vous aidera à localiser les fichiers binaires, les codes sources et les pages de manuel de diverses commandes au sein du système Linux. À l'issue de ce TP, vous serez capable de naviguer efficacement dans l'arborescence du système et de repérer les composants critiques du système.

Comprendre les bases de 'whereis'

Votre première tâche chez TechCorp consiste à vous familiariser avec la commande whereis. Cette commande est utilisée pour localiser les fichiers binaires, les sources et les pages de manuel d'une commande spécifiée.

Commençons par utiliser whereis pour trouver des informations sur la commande ls :

whereis ls

Vous devriez voir un résultat similaire à celui-ci :

ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

Ce résultat fournit deux informations essentielles :

  1. /usr/bin/ls : Il s'agit de l'emplacement de l'exécutable binaire ls. Lorsque vous tapez ls dans le terminal, c'est ce programme précis qui est exécuté.
  2. /usr/share/man/man1/ls.1.gz : Il s'agit de l'emplacement de la page de manuel pour ls. Les pages de manuel contiennent des informations détaillées sur l'utilisation des commandes.

La commande whereis recherche des fichiers dans un ensemble restreint d'emplacements, incluant les répertoires binaires standards, les répertoires de bibliothèques et les répertoires de pages de manuel. Cela la rend beaucoup plus rapide qu'une recherche sur l'ensemble du système de fichiers.

Si vous vous interrogez sur la signification de ces chemins :

  • /usr/bin est un emplacement courant pour les commandes utilisateur.
  • /usr/share/man est l'endroit où les pages de manuel sont généralement stockées.
  • man1 indique qu'il s'agit d'un manuel pour les commandes utilisateur (par opposition aux appels système ou aux fonctions de bibliothèque).
  • L'extension .gz signifie que le fichier est compressé pour économiser de l'espace disque.

Trouver des fichiers binaires

Votre chef d'équipe vous demande de localiser le fichier binaire de la commande grep. L'option -b de whereis est parfaite pour cette tâche car elle cible spécifiquement les fichiers binaires.

Essayez la commande suivante :

whereis -b grep

Vous devriez voir un résultat comme celui-ci :

grep: /usr/bin/grep

Ce résultat indique l'emplacement du fichier binaire grep. Les fichiers binaires sont les programmes exécutables qui se lancent lorsque vous saisissez une commande. Dans ce cas, lorsque vous utilisez la commande grep, vous exécutez en réalité le programme situé dans /usr/bin/grep.

Maintenant, essayons de trouver le binaire d'une commande qui n'existe probablement pas sur le système. Utilisez whereis -b pour rechercher une commande fictive nommée nonexistent :

whereis -b nonexistent

Vous devriez obtenir :

nonexistent:

Ce résultat vide indique qu'aucun binaire n'a été trouvé pour la commande nonexistent. C'est une méthode très utile lorsque vous n'êtes pas certain qu'une commande particulière est installée sur votre système.

Localiser les pages de manuel

Votre prochaine tâche consiste à trouver les pages de manuel pour la commande ssh. Les pages de manuel sont indispensables pour comprendre le fonctionnement des différentes commandes.

Utilisez l'option -m avec whereis pour localiser les pages de manuel :

whereis -m ssh

Le résultat devrait ressembler à ceci :

ssh: /usr/share/man/man1/ssh.1.gz

Ce résultat indique l'emplacement de la page de manuel pour la commande ssh. L'extension .gz confirme que le fichier est compressé.

Pour consulter le contenu d'une page de manuel, on utilise normalement la commande man. Cependant, comme nous n'avons pas encore abordé cette commande, vérifions simplement que le fichier existe bien :

ls /usr/share/man/man1/ssh.1.gz

Si le fichier existe, son nom s'affichera. Cela confirme que la documentation est bien présente sur votre système.

Connaître l'emplacement des pages de manuel est crucial pour un administrateur système. Cela vous permet de vérifier si la documentation est disponible pour une commande donnée, ce qui s'avère précieux lorsque vous devez apprendre à utiliser un outil ou résoudre des problèmes techniques.

Combiner les options

À mesure que vous vous familiarisez avec whereis, votre chef d'équipe vous met au défi de trouver simultanément le binaire et la page de manuel de la commande python3.

Vous pouvez combiner les options -b et -m pour y parvenir :

whereis -bm python3

Le résultat pourrait ressembler à ceci :

python3: /usr/bin/python3 /usr/lib/python3 /etc/python3 /usr/share/python3 /usr/share/man/man1/python3.1.gz

Ce résultat fournit une mine d'informations :

  • /usr/bin/python3 : L'emplacement du binaire Python 3 (le programme exécutable).
  • /usr/lib/python3 : Le répertoire contenant les bibliothèques Python 3 (code réutilisable par les programmes Python).
  • /etc/python3 : Un répertoire contenant les fichiers de configuration de Python 3.
  • /usr/share/python3 : Un répertoire contenant des données partagées pour Python 3.
  • /usr/share/man/man1/python3.1.gz : L'emplacement de la page de manuel de Python 3.

Cette vue d'ensemble est particulièrement utile lorsque vous travaillez avec des logiciels complexes dont les composants sont répartis dans tout le système de fichiers. Cela vous donne un aperçu rapide de l'organisation des fichiers.

Explorer les fichiers sources

Pour la dernière tâche, votre chef d'équipe souhaite que vous vérifiiez si les fichiers sources du shell bash sont disponibles sur le système. Les fichiers sources peuvent être utiles pour comprendre le fonctionnement interne d'un programme ou pour compiler des versions personnalisées.

Utilisez l'option -s pour rechercher les fichiers sources :

whereis -s bash

Le résultat sera probablement vide, car les fichiers sources ne sont généralement pas installés par défaut sur la plupart des systèmes. Si un résultat s'affiche, il indiquera l'emplacement du code source de bash sur votre machine.

Maintenant, combinons toutes les options pour obtenir une image complète de la commande bash :

whereis bash

Cette commande sans option affichera toutes les informations disponibles sur bash, ce qui pourrait ressembler à ceci :

bash: /usr/bin/bash /etc/bash.bashrc /usr/share/man/man1/bash.1.gz

Ce résultat montre :

  • /usr/bin/bash : L'exécutable binaire pour bash.
  • /etc/bash.bashrc : Un fichier de configuration système pour bash.
  • /usr/share/man/man1/bash.1.gz : La page de manuel pour bash.

Comprendre l'emplacement de ces fichiers est essentiel pour les tâches d'administration. Par exemple, si vous devez modifier le comportement par défaut de bash pour tous les utilisateurs, vous saurez qu'il faut regarder dans /etc/bash.bashrc.

Résumé

Dans cet atelier, vous avez appris à utiliser la commande whereis pour localiser les fichiers binaires, les sources et les pages de manuel de diverses commandes sous Linux. Vous avez découvert comment :

  1. Trouver des informations de base sur les commandes.
  2. Localiser les fichiers binaires avec l'option -b.
  3. Trouver les pages de manuel avec l'option -m.
  4. Combiner les options pour obtenir des informations plus complètes.
  5. Rechercher des fichiers sources avec l'option -s.

ces compétences seront précieuses dans votre rôle d'administrateur système, vous permettant de localiser rapidement des fichiers importants et de comprendre la structure de votre système Linux.

D'autres options de la commande whereis non abordées ici incluent :

  • -u : Recherche des entrées inhabituelles (fichiers qui ne suivent pas le schéma de nommage habituel).
  • -B : Modifier ou restreindre les emplacements où whereis cherche les binaires.
  • -M : Modifier ou restreindre les emplacements où whereis cherche les manuels.
  • -S : Modifier ou restreindre les emplacements où whereis cherche les sources.

Tout au long de votre parcours en administration système, gardez à l'esprit que whereis n'est qu'un outil parmi d'autres. Il est particulièrement efficace pour des recherches rapides, mais pour des recherches de fichiers plus approfondies, vous pourriez explorer des commandes comme find ou locate à l'avenir.