Linux est à monter comme Windows est à _______?

39

Ainsi, Linux "monte" sur un disque dur pour effectuer des opérations telles que la lecture / écriture. Est-ce que Windows "monte" de la même manière?

Est-ce appelé quelque chose de différent dans le contexte de Microsoft?

Chad Harrison
la source
9
Windows se monte automatiquement et, par conséquent, aucun outil explicite n'est exposé aux utilisateurs habituels. De nombreux environnements de bureau Linux le font également par défaut. Pour le concept de montage, vous pouvez voir l'entrée Wikipedia . En bref, le montage d'un périphérique expose l'accès au système de fichiers qu'il contient. Cela doit être fait pour pouvoir accéder aux fichiers via un système de fichiers, quel que soit le nom du système d'exploitation.
Daniel Andersson

Réponses:

88

Si vous connaissez les internes de Windows, corrigez mes erreurs, s'il vous plaît.

Le "montage" consiste en deux parties principales identiques dans les deux systèmes, mais leur séparation est quelque peu différente:

  1. accéder au système de fichiers sur le disque;
  2. assigner un chemin au système de fichiers.

Sous Linux, la même mount()fonction effectue les deux travaux. un système de fichiers doit être monté explicitement sur un chemin choisi par l'utilisateur et reste ouvert tant qu'il est monté sur au moins un chemin (éventuellement plus). Une fois que tous les chemins d'accès à ce système de fichiers sont umount()édités, il est fermé.

Windows monte automatiquement les volumes lorsque le volume apparaît - il ouvre immédiatement le système de fichiers et lui attribue une lettre de lecteur et / ou tout autre nom configuré.

Un disque peut être temporairement "démonté" à l'aide des fonctions FSCTL_LOCK_VOLUMEet / ou ioctl - par exemple, en l'exécutant -, mais est automatiquement remonté lorsque le programme le déverrouille ou se ferme. Ce comportement pourrait être considéré comme une sorte d’opposé à Linux. Comme le démontage d'un système de fichiers est temporaire, il conserve les noms attribués même lorsqu'il est démonté. (La fonction "Supprimer en toute sécurité" démonte le système de fichiers et désactive le périphérique sous-jacent pour empêcher Windows de voir le système de fichiers et de le remonter.)FSCTL_DISMOUNT_VOLUME chkdsk

Un système de fichiers peut avoir plusieurs noms attribués:

  • Lettres de lecteur ( A:, C:, [:) - attribués automatiquement aux nouveaux disques et perdus au redémarrage, bien que Windows mémorise les affectations configurées par l'utilisateur. De cette manière, ils sont similaires aux points de montage Unix.

    (Des lettres de lecteur peuvent également être attribuées à des périphériques arbitraires, y compris des systèmes de fichiers réseau pris en charge par Windows. Vous pouvez voir leurs cibles sur \GLOBAL??\et \Sessions\<session>\DosDevices\<loginid>\dans WinObj .)

    Remarque: Les lettres de lecteur sont généralement utilisées à l'échelle du système, mais elles peuvent également être affectées à l'ensemble de la session à l'aide de substou DefineDosDevice(), et oui, cela est accepté [:. Les assignations à la session ne sont jamais stockées nulle part et disparaissent au redémarrage.

  • Points de montage des dossiers ( C:\Disks\Music) - un système de fichiers peut être monté sur n’importe quel répertoire, comme dans Unix; Cependant, ils sont réellement stockés sur le disque cible, sous la forme de points d'analyse (une forme plus puissante de liens symboliques) qui font référence au disque monté par son nom de volume .

    (Différents types de points d'analyse existent également; quelques-uns des standards sont les points de montage, les liens symboliques, les jonctions d'annuaire.)

  • Chemin d'accès au volume GUID ( \\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\) (du moins, c'est comme ça que ça s'appelle) - chemins spéciaux dans l' espace de noms Win32\\?\ , contenant un UUID que Windows attribue à ce volume particulier sur ce système Windows particulier. Ils ne peuvent pas être changés. Ils sont répertoriés par mountvolou sous \GLOBAL??\WinObj. Contrairement aux lettres de lecteur, elles sont identiques pour tous les utilisateurs.

  • Chemins d'interface de périphérique \\?\STORAGE#Volume#<something>Signature<hex>Offset<hex>Length<hex>#<uuid>\Contrairement à un chemin GUID de volume, chaque volume possède exactement un chemin d'interface de périphérique.

    • Nom du périphérique de volume \Device\HarddiskVolume23- contrairement à tous les précédents, qui ne sont que des liens symboliques, cela nomme directement le volume. Vous le savez parce que c'est dans l' \Deviceespace de noms, pas dans l' \\?espace de noms. Cela signifie également que vous ne pouvez pas l'utiliser avec des fonctions telles que CreateFile.

diskmgmt.msc, mountvolet diskpartpeut gérer à la fois les lettres de lecteur et les points de montage.

Même lorsqu'un volume ne contient aucune lettre de lecteur et qu'il n'est "monté" sur aucun dossier, il reste ouvert et son contenu est toujours accessible via son nom de volume; par exemple

\\?\Volume{710308c0-978e-11e1-95bc-806d6172696f}\Windows\Explorer.exe
Grawity
la source
4
[:..? Vraiment?
Daniel Beck
11
@DanielBeck: Oui, DefineDosDevice()accepte pratiquement tout, même si vous aurez peu de chance de convaincre la plupart des applications de l'accepter. Essayez subst [: C:\Users, alorsdir [:
grawity
4
@Daniel: En donnant tous les octets possibles à DefineDosDevice - qui les accepte presque tous. Il s'avère que l'espace est valide aussi!
Grawity
8
Si les filles étaient assez férues de technologie, elles [:
mettraient
5
@psusi, LASTDRIVE est entré dans config.sys. system.ini était Windows.
un CVn
43

mountvol.exe est l'équivalent Windows.

Exemple de sortie de mountvol

Der Hochstapler
la source
+1 pour une réponse concise sur une ligne et la réponse est en haut. ET vous fournissez un exemple de bonus capture d'écran!
Trevor Boyd Smith
La copie d’écran n’est pas copier / coller et prend beaucoup de place, plus que le texte équivalent, pour la même quantité d’informations. Ce n'est pas une bonne idée je pense.
Ludovic Kuty
@ LudovicKuty: Oui, j'étais au courant de ce problème lorsque j'ai posté ceci. C'est juste la sortie d'exemple de ce qui est mountvolimprimé sur ma machine. Cela ne devrait donc pas être trop difficile à reproduire. Si je mets le texte brut ici, il est devenu plus difficile à lire à cause de la boîte avec des barres de défilement :( Si vous voulez modifier la réponse pour l’améliorer, allez-y :)
Der Hochstapler
Non, en fait, beaucoup de gens sont contents de ça :) J'ai surtout commenté le message "ET vous fournissez un exemple de capture d'écran de bonus". Ça aide les gens, c'est bien.
Ludovic Kuty
6

Oui, mais en général, il est géré automatiquement (par exemple, avec une clé USB).

L'utilitaire de gestion de disque (composant de Computer Mgmt) vous permet de manipuler des volumes et des points de montage. Explorer fait la même chose pour les partages réseau. Il existe également des versions en ligne de commande (diskpart.exe dans Windows 7) en fonction de la version de Windows que vous exécutez.

uSlackr
la source
1
De plus, le démontage des disques remplaçables à chaud s'effectue généralement via le Safely Remove Hardwaremenu. Pour remonter ces périphériques, débranchez le câble de connexion (USB / FireWire / eSATA) et rebranchez-le, ou désactivez le port USB / FireWire / etc. périphérique à partir du Gestionnaire de périphériques et réactivez-le, et Windows le remontera automatiquement.
Lèse majesté
Il en va de même avec certaines distributions Linux, par exemple Ubuntu.
krlmlr
3

La réponse la plus courte et la plus évidente à renseigner dans votre _ _ _ _ _ _ _ est "monter". Linux monte (et démonte) les systèmes de fichiers, tout comme Windows.

Chaque processus automatise ce processus à des degrés divers en fonction de nombreux facteurs que je ne suis pas en mesure de répertorier, mais je pense que les stratégies de mise en cache, le style / les préférences de l'utilisateur et les brevets exercent une influence considérable sur l'automatisation de ce processus.

matty
la source