La gestion des fichiers sous Linux

6 min
247
0
0
Publié le

La gestion des fichiers sous Linux contraste singulièrement avec l'environnement auquel les utilisateurs de Windows sont habitués. Loin des explorateurs graphiques, c'est le terminal et ses commandes dédiées qui règnent en maître. Un pivot qui exige de revoir ses réflexes, mais ouvre également la porte à une maîtrise sans précédent de son système.

Car derrière cette austérité apparente se dissimule un éventail de possibilités dont la plupart des administrateurs négligent encore la portée. Pourtant, les enjeux de sécurité obligent désormais à la plus grande vigilance. En effet, une mauvaise configuration des permissions sur les fichiers constitue l'une des menaces les plus prégnantes.

Les commandes de base pour la manipulation des fichiers

Maîtriser les opérations élémentaires sur les fichiers constitue le socle de toute gestion efficace sous Linux. Heureusement, une poignée de commandes fondamentales suffit pour couvrir l’essentiel des besoins :

  • cd permet de naviguer entre les répertoires. Couplée à des chemins absolus ou relatifs, elle offre un contrôle total sur le positionnement dans l’arborescence. Quelques options avancées méritent également d’être soulignées, comme cd - qui retourne au répertoire précédent.

  • ls dresse quant à elle la liste des contenus du répertoire courant. Taper ls -l révèle des informations détaillées sur les fichiers, comme les droits, les propriétaires ou les dates de dernière modification. Là encore, de nombreux paramètres permettent d’affiner l’affichage, à l’instar de ls -a pour voir les fichiers cachés. 

  • mkdir : sa syntaxe ne souffre aucune ambiguïté. mkdir mon_repertoire crée instantanément le dossier mon_repertoire dans le répertoire en cours. Attention, mkdir ne créera pas les dossiers parents si le chemin complet n’existe pas déjà.

  • rmdir supprime un répertoire, à condition qu’il soit déjà vide. Pour effacer des fichiers, c’est la commande rm qu’il faudra utiliser. Très puissante, rm ne propose aucune confirmation avant de détruire définitivement les données désignées. La plus grande prudence est donc de mise dans son maniement.

  • touch permet de créer un fichier vide ou de mettre à jour la date de dernière modification d’un fichier existant. Associée à des wildcards comme *, elle délivre un formidable outil pour réaliser des opérations en masse sur les fichiers.


La structure arborescente sous Linux

Contrairement à Windows qui repose sur des lecteurs (C:, D:, etc.), Linux utilise une arborescence unique enracinée à la racine (root). Celle-ci se divise en un ensemble de répertoires standards, dont voici les plus importants :

  • /bin - Contient les exécutables binaires essentiels au fonctionnement du système, comme ls, cd, etc.

  • /etc - Regroupe les fichiers de configuration système et des applications. C’est le cœur du paramétrage d’une distribution Linux.

  • /home - Répertoire personnel des utilisateurs, où sont stockés leurs données (documents, images, téléchargements, etc.).   

  •  /usr - Une hiérarchie complète composée de sous-répertoires comme /usr/bin ou /usr/share abritant de nombreux programmes.

  • /tmp - Emplacement pour stocker les fichiers temporaires, vidé à chaque redémarrage.

  • /var - Zone réservée pour diverses données amenées à croître dans le temps (logs, caches, spools, etc.).


Au-delà de cette division logique, l’administrateur doit maîtriser deux types de chemins pour accéder aux fichiers :


Les chemins absolus débutent systématiquement à la racine /. Ils pointent de façon non ambiguë vers un fichier ou un répertoire donné, comme dans /home/utilisateur/document.txt. Attention cependant : un chemin absolu n’est valable que sur la machine locale !

Les chemins relatifs indiquent un emplacement relatif au répertoire courant. Ils sont donc plus flexibles lors des copies/déplacements entre machines, du moment que la structure des répertoires reste similaire. Un chemin relatif classique serait alors ../../documents/rapport.pdf pour remonter de deux niveaux de dossiers avant d’atteindre le dossier documents.

Les permissions sur les fichiers

Sous Linux, les permissions sur les fichiers constituent une barrière essentielle contre les accès non autorisés. Pour chaque fichier ou dossier sont définis trois ensembles de droits :

  • Le propriétaire (u) : l'utilisateur propriétaire du fichier.

  • Le groupe (g) : un groupe d'utilisateurs auquel appartient le propriétaire.

  • Les autres (o) : tous les utilisateurs n'appartenant pas aux deux catégories précédentes.

Chacun de ces trois acteurs dispose de trois types de permissions :

  • Lecture (r) : possibilité de consulter le contenu du fichier.

  • Écriture (w) : possibilité de modifier le contenu du fichier.

  • Exécution (x) : possibilité d'exécuter le fichier dans le cas d'un programme ou d'accéder au contenu du répertoire s'il s'agit d'un dossier.

Ces permissions peuvent être consultées grâce à la commande ls -l qui les affiche sous la forme symbolique suivante :

Ici, le propriétaire root possède les droits de lecture, d'écriture et d'exécution (rwx). Les membres du groupe admin disposent des droits de lecture et d'exécution (r-x) tandis que tous les autres utilisateurs n'ont aucun droit (--).

Modifier ces permissions s'effectue aisément avec la commande chmod. Par exemple, pour accorder le droit d'exécution à tous les utilisateurs sur mon_script.sh, il suffit de taper :  

La commande chmod s'avère donc très utile pour rectifier rapidement des problèmes de permissions sur des fichiers. Les options sont nombreuses pour accorder ou supprimer des droits de façon extrêmement précise.

La recherche de fichiers

Trouver un fichier spécifique peut vite se révéler laborieux sur des systèmes comptant des dizaines de milliers de fichiers. Heureusement, Linux dispose de puissants outils dédiés à cette tâche : les commandes locate et find.

Utilisable simplement en ligne de commande, locate permet de rechercher instantanément un fichier par son nom à travers l'ensemble du système de fichiers. Sa rapidité tient au fait qu'il s'appuie sur une base de données mise à jour chaque jour. L'inconvénient est qu'il ne détecte pas les fichiers créés depuis la dernière mise à jour.

Cette requête va sonder la base de données locate pour trouver tout fichier correspondant au nom exact « rapport-mars-2023.doc ». Le résultat s'affichera instantanément si le fichier est indexé.

La commande find ne souffre pas de cette limitation. Bien que plus lente, elle scanne réellement les disques pour y dénicher le fichier demandé. Extrêmement versatiles, ses options permettent de filtrer finement les résultats :

Cette requête va parcourir /home/util à la recherche des fichiers dont le nom commence par « document » et finit par « .txt ». Par ailleurs, les expressions régulières offrent un moyen puissant d'affiner les critères, en complément du tri par taille, date de dernière modification, etc.

En définitive, locate et find forment un tandem idéal de recherche de fichiers sous Linux. Le premier pour sa vitesse, le second lorsque le besoin de résultats en temps réel prévaut. En les adoptant, plus aucun fichier ne saurait échapper à l'administrateur, aussi profondément enfoui soit-il !

Ainsi, la gestion des fichiers en ligne de commande constitue un pilier de l'administration Linux. Les commandes de manipulation de base, la structure arborescente, les permissions et les outils de recherche n'auront plus de secret pour vous !

Pour en savoir plus sur Linux :

Inscription à la newsletter

Si vous êtes passioné.e d'IT, vous allez adorer notre newsletter

Politique de confidentialité

Boostez vos projets IT

Les meilleures missions et offres d’emploi sont chez Free-Work

Continuez votre lecture autour des sujets :

Commentaire

Dans la même catégorie

Au service des talents IT

Free-Work est une plateforme qui s'adresse à tous les professionnels des métiers de l'informatique.

Ses contenus et son jobboard IT sont mis à disposition 100% gratuitement pour les indépendants et les salariés du secteur.

Free-workers
Ressources
A propos
Espace recruteurs
2024 © Free-Work / AGSI SAS
Suivez-nous