web-dev-qa-db-fra.com

Qu'est ce que "monter"

qu'est-ce que "monter"? J'ai l'impression que cela signifie "rendre le stockage de données accessible", mais qu'est-ce que cela signifie vraiment? Veuillez spécifier les cas où "le disque est accessible" et "le disque est monté" sont différents ".

9
user480468

Eh bien, revenons à l'essentiel:

  • Lorsque vous connectez un périphérique de mémoire, tel qu'un lecteur flash, le noyau Linux crée un fichier spécial à cet effet dans le répertoire/dev. Tous vos appareils sont représentés par l'un de ces fichiers.

  • Lorsque ce périphérique n'est pas monté, vous ne pouvez pas y accéder/lire/écrire. C'est comme un mode "stand-by", prêt à être utilisé, mais pas encore utilisé.

  • Lorsque vous montez le périphérique, vous devez spécifier un point de montage. Ceci est un concept très déroutant pour les utilisateurs de Windows. Sous Windows, chaque périphérique de mémoire a sa propre racine. Sous Linux, ils sont toujours montés dans une seule racine.

  • Monter un périphérique de mémoire revient essentiellement à "l'allumer" à partir du mode "veille". Il est accessible via le point de montage spécifié.

  • Le répertoire/mnt existe afin que vous puissiez y monter des objets. Dans certaines distributions (comme Ubuntu), il existe également un répertoire/media, dans le même but.

4
Eduardo Cola

Par souci de simplicité, je limiterai cette réponse aux périphériques de stockage habituels tels que les disques et les lecteurs flash.

Lorsque vous connectez votre périphérique, son pilote le rend accessible en tant que nœud de périphérique, ce qui, pour les programmes utilisateur, ressemble à un fichier: par exemple. /dev/sda. Maintenant, le disque est déjà accessible. Vous pouvez le lire et l'écrire. Voici un exemple de la façon dont vous pourriez regarder son MBR (512 premiers octets) sous forme hexadécimale + ASCII:

Sudo head -c 512 /dev/sda | xxd -g1

Mais si vous avez des fichiers sur ce périphérique et que vous souhaitez y accéder, cette apparence de bas niveau n'est pas tout à fait satisfaisante. Vous souhaitez impliquer un pilote système de fichiers . Pour cela, montez le périphérique à l’aide de l’utilitaire mount. Pour que cela soit plus évident, je spécifierai explicitement le système de fichiers dans la commande suivante (en supposant que j'ai fait le bon choix de ext4; sinon, mount vous le dira):

Sudo mount /dev/sda1 /mnt/ -t ext4

Après cela, votre appareil sera exposé dans /mnt/ dans le format attendu par les programmes utilisateur: fichiers et répertoires - au lieu de simples secteurs.

Vous pouvez vous demander pourquoi j'ai utilisé sda1 au lieu de sda dans la commande ci-dessus. C'est parce qu'entre le niveau de système de fichiers et le niveau de secteurs simples, il y a une petite couche de partitionnement , et ici sda1 désigne la première partition sur le périphérique sda.

3
Ruslan

Dans quelle mesure connaissez-vous Windows (ou - bêta! - DOS)? Si vous avez dépassé le statut de novice absolu pour l'un ou l'autre, vous savez que le périphérique de stockage secondaire de votre système principal (disque dur ou SSD) s'appelle C:. (Pour simplifier, je supposerai que l'ordinateur ne possède qu'un seul périphérique de stockage secondaire et une seule partition.) Le répertoire racine est C:\ et contient d'autres répertoires tels que C:\Intel, C:\Program Files, C:\Users et C:\Windows. Ceux-ci peuvent contenir encore une autre couche de répertoires; par exemple, C:\Program Files\Oracle, C:\Users\your_name, etc.

  • Mais si vous insérez un disque optique (CD ou DVD) dans le lecteur approprié, il devient D:. Et il possède également un répertoire racine, D:\, et généralement des répertoires subordonnés tels que D:\Install.
  • Et si vous vous souvenez de disquettes ("disquettes"), vous vous souviendrez qu’il s’agissait d’un disque A: (et, dans l’époque très ancienne, vous pourriez en avoir une seconde, qui s'appelait naturellement B:). Et le même schéma s'applique: le répertoire racine A:\ peut contenir des dossiers tels que A:\GAMES et A:\WORK.
  • Les autres lecteurs amovibles (par exemple, les lecteurs USB) ont des lettres de lecteur au-delà de D (peut-être F), et le répertoire racine F:\ peut contenir des dossiers tels que F:\Project1.
  • Et si vous avez des lecteurs réseau, ils pourraient avoir des lettres de lecteur à la fin de l'alphabet (peut-être Z), et le répertoire racine Z:\ pourrait contenir des dossiers tels que Z:\Project2.

Ainsi, la disposition des répertoires de votre ordinateur ressemblait à ceci:

     A:\                          C:\                             D:\        F:\        Z:\
    ⋰ ⋱                     ⋰  ⋰  ⋱  ⋱                       ⋰         ⋰          ⋰
   ⋰   ⋱               ⋰     ⋰      ⋱     ⋱                 ⋰         ⋰          ⋰
  ⋰     ⋱         ⋰        ⋰          ⋱        ⋱           ⋰         ⋰          ⋰
GAMES   WORK    Intel   Program Files   Users    Windows    Install    Project1    Project2
                             ⋰          ⋰
                           ⋰          ⋰
                         ⋰          ⋰
                     Oracle     user480468

Ainsi, vous pourriez avoir, en principe, jusqu'à 26 arborescences de répertoires de système de fichiers indépendantes, chacune avec son propre répertoire racine. Et je suppose que cela fonctionne assez bien, en particulier maintenant que Windows les lie tous ensemble dans le superfolder Computer (précédemment appelé My Computer). (Mais encore une fois, regardez à quel point il est difficile d'installer des programmes sur un disque autre que C:, ou de déplacer votre répertoire utilisateur hors de C:.) Et notez que Computer est un pseudo -folder - vous ne pouvez pas créer de fichiers ou de répertoires dans Computer.

nix a une philosophie qui inclut le concept Faites une chose et faites-le bien . (Même le nom “Unix” est dérivé du préfixe “un-” ou “uni-”, qui signifie “un” .) Il n’est donc pas surprenant que les concepteurs d’Unix aient choisi le unique arborescence de répertoires du système de fichiers; vous êtes probablement au courant:

                                        /
                               ⋰ ⋰ ⋰  ⋮  ⋱ ⋱ ⋱
                         ⋰   ⋰   ⋰    ⋮    ⋱   ⋱   ⋱
                   ⋰     ⋰     ⋰      ⋮      ⋱     ⋱     ⋱
             ⋰       ⋰       ⋰        ⋮        ⋱       ⋱       ⋱
       ⋰         ⋰         ⋰          ⋮          ⋱         ⋱         ⋱
 ⋰           ⋰           ⋰            ⋮            ⋱            ⋱            ⋱
bin         dev          etc           home           mnt          tmp          usr    …
                                       ⋰                                       ⋰⋱
                                     ⋰                                       ⋰    ⋱
                                   ⋰                                       ⋰        ⋱
                              user48046                                   bin         lib

La beauté de ceci est que vous (dans votre rôle d’administrateur système) pouvez tout mettre dans une partition, ou mettre /home dans une partition et /usr dans une autre, et vous (dans votre rôle d’utilisateur) peut l'oublier. Vous n'avez pas besoin de savoir quel disque (partition) /usr est allumé; il apparaît sous la racine unique du système de fichiers (/) quel que soit. Le léger inconvénient est que vous (dans votre rôle d'utilisateur expérimenté) devez maintenir cette arborescence de répertoires de système de fichiers unifiée lorsque vous ajoutez (et supprimez) des composants de stockage. Lorsque vous insérez un CD ou un lecteur flash, il ne s’agit que d’une entrée sous /dev, avec laquelle vous ne devriez probablement pas trop jouer. Vous pouvez faire certaines choses avec le nœud de périphérique, comme exécuter fsck ou fdisk; ou éventuellement le configurer en tant que périphérique de stockage de base de données dédié (par exemple pour Oracle) - car , le disque est accessible . Mais vous ne pouvez pas accéder aux fichiers (et répertoires), car ils ne sont pas encore dans le système de fichiers - car , le disque n’est pas monté .

TL; DR

Et c’est là que mount entre. mount est la commande qui attache a système de fichiers (par exemple, sur un périphérique amovible) pour le système de fichiers (celui commençant par /).1Vous remarquerez qu'il existe un répertoire /mnt sous le répertoire /. Classiquement, les périphériques de stockage de système de fichiers transitoires (amovibles) sont montés sur des répertoires sous /mnt; c'est-à-dire qu'ils sont attachés au système de fichiers à cet endroit. Et sur certains systèmes, certains périphériques sont automatiquement montés lorsqu'ils sont détectés. Mais, en théorie, vous pouvez monter un système de fichiers n'importe où dans le système de fichiers .
___________
1 Couper les cheveux en l'air, mount est un programme qui appelle l'appel système mount(), qui attache a système de fichiers pour le système de fichiers .

1
G-Man

Lorsque vous "montez" quelque chose, vous placez un accès au système de fichiers contenu dans la structure de votre système de fichiers racine. Donner effectivement aux fichiers un emplacement. Ceci est similaire aux étiquettes de lecteur C:/D: dans Windows.

Monter/dev/sdb1 sur/mnt/disk1 place tous les fichiers et dossiers contenus dans le périphérique standard disk B partition 1 dans le répertoire /mnt/disk1 où vous pouvez y accéder.

Les systèmes modernes permettent de monter automatiquement des lecteurs de la même manière que Windows pour monter des lecteurs de lettres, mais le système de montage par localisation sous Unix est beaucoup plus flexible. Et le démontage est évidemment la suppression de l'accès à ces fichiers/dossiers à partir de cet emplacement. Vous pouvez savoir quels systèmes de fichiers sont montés en exécutant la commande:

mount

Parties impliquées: mount, umount, fstab (pour les montages fixes), udev, gvfs (pour le montage automatique)

0
zed Blackbeard