Dans UDF, quelle est la différence entre un identifiant de volume, un identifiant d'ensemble de volumes, un identifiant de volume logique et un identifiant d'ensemble de fichiers?

17

Je vois qu'il mkudffsa des options pour quatre identifiants différents: le volume logique ( --lvid), le volume ( --vid), l'ensemble de volumes ( --vsid) et l'identifiant d'ensemble de fichiers ( --fsid). Cependant, il ne donne aucune indication sur leur signification.

Je suis donc allé aux spécifications UDF. En commençant par ISO / CEI 13346 alias ECMA-167 , je trouve que:

10.1.4 Identificateur de volume (BP 24)

Ce champ doit spécifier une identification du volume.

14.1.10 Identificateur de volume logique (BP 112)

Ce champ doit spécifier une identification du volume logique sur lequel l'ensemble de fichiers est enregistré.

14.1.12 Identificateur d'ensemble de fichiers (BP 304)

Ce champ doit spécifier une identification de l'ensemble de fichiers décrit par ce descripteur d'ensemble de fichiers.

Eh bien, c'était utile.

J'ai donc essayé la spécification OSTA UDF 1.02 , car c'est la version UDF que j'essaie de générer. Cela n'a pas beaucoup aidé (bien qu'il m'ait mis en garde contre les "valeurs fixes ou triviales").

J'ai essayé la spécification UDF 1.50 qui me dit encore - au §4.1 - qu'avant d'afficher ces valeurs, qu'une transformation spécifique au système d'exploitation utilisant les algorithmes décrits au §4.1.2.1 doit être appliquée. Bien sûr, la section suivante après le §4.1 est le §4.2, alors bonne chance à ce sujet. En outre, le LogicalVolumeIdentifier est "extrêmement important dans l'identification de volume logique lorsque plusieurs médias sont présents dans un juke-box. Le nom est généralement ce qui est affiché pour l'utilisateur."

Donc, j'essaie la spécification UDF 2.01 , et maintenant je sais que maintenant, au moins, ils ont réalisé que c'est 4. 2 .2.1, qui existe, mais n'aide pas (il traite de choses comme les jeux de caractères).

Donc, pour autant que je sache:

  • L'identifiant de volume logique est ce qui est affiché à l'utilisateur (peut-être uniquement des juke-box). Il doit donc être défini sur quelque chose de significatif, par exemple, le titre du disque. Je suppose que c'est le titre du disque que Windows, Mac OS ou Nautilus afficheraient.
  • Les autres n'existent que pour perdre de l'espace sur le disque, n'ayant aucune description réelle de ce à quoi ils servent. Malgré cela, je devrais leur donner des valeurs qui ne sont ni fixes ni triviales. Peut-être que je devrais simplement les définir sur des lignes aléatoires (c'est-à-dire non fixes) de Shakespeare (c'est-à-dire non triviales).

Ou, mieux encore: à quoi servent les autres domaines?

derobert
la source
1
Utilisez des UUID, pas des lignes Shakespeare.
Daniel Beck
@DanielBeck: Eh bien, il y a une note sur le champ VolumeSetIdentifier, qui dit que les 16 premiers devraient être uniques, les 8 premiers étant un horodatage ... Donc je suppose que pour celui-ci, l'UUID n'est pas autorisé, mais encore une fois Shakespeare non plus. Je crains cependant que les UUID puissent être considérés comme «triviaux». :-P Sur une note sérieuse, je soupçonne que les trucs de réglage de volume ont un objectif similaire à celui de ISO9660, IOW, quelque chose que personne n'utilise, mais le comité a quand même ajouté.
derobert

Réponses:

2

Ce sont des tas de chaînes inutiles , sauf LVID .

Formulaire mkudffs:

  • --lvid Spécifiez l'identifiant de volume logique. Il définit une chaîne donnée dans les champs suivants:
    • Identificateur de volume logique dans le descripteur de volume logique (voir la figure 15 dans ECMA-167 )
    • Identifiant de volume logique dans l'utilisation de l'implémentation. (Voir 2.2.7.2 dans UDF 2.01 )
    • Identificateur de volume logique dans le descripteur d'ensemble de fichiers. (Voir figure 9 dans ECMA-167 ) Descripteur d'ensemble de fichiers. (Voir la figure 9 dans [ECMA-167] [5]).
      Identifiant de volume logique affiché dans les fenêtres comme étiquette de disque.
  • --vid Spécifiez l'identifiant du volume. Il définit givend string sur le champ Volume Identifier dans le descripteur de volume principal. (Voir figure 6 dans ECMA-167 ). Longueur maximale 31 octets. Valeur par défaut "Linux UDF".
  • --vsid Spécifiez l'identifiant de l'ensemble de volumes. Il définit une chaîne donnée dans le champ identifiant de l'ensemble de volumes dans le descripteur de volume principal. (Voir figure 6 dans ECMA-167 ). Longueur maximale 127 octets. Valeur par défaut "Linux UDF".
    L'identificateur d'ensemble de volumes peut être édité par certains programmes de création de disque comme ImgBurn, MagicISO. Il spécifie une identification de l'ensemble de volumes dont le volume est membre.
  • --fsid Spécifiez l'identifiant de l'ensemble de fichiers. Il définit le champ Identifiant d'ensemble de fichiers dans le Descripteur d'ensemble de fichiers. (Voir figure 9 dans ECMA-167 ). Longueur maximale 31 octets. Valeur par défaut "Linux UDF".
Nikolai
la source
Oui, je l' ai lu la page de manuel et les sections des normes (après tout, je leur sont liés à ma question) ... La question est quels sont les domaines pour , pas comment les régler.
derobert
1

Je pense que cela dépend entièrement de vous; Je dirais que les champs sont là pour soutenir les processus d'entreprise. Une utilisation qui me vient à l'esprit est d'utiliser l'identificateur d'ensemble de volumes pour des choses comme «sauvegarde complète mensuelle de FOO, 2015-12», et l'identifiant de volume pourrait alors être quelque chose comme «disque 1 sur 42». Ou peut-être aurez-vous en fait un identifiant physique, par exemple un code-barres, imprimé sur le disque, et l'identifiant de volume peut contenir cela (de sorte que vous pouvez identifier le disque soit en le lisant dans un lecteur, soit en pointant un lecteur de code-barres vers lui) ).

J'imagine que l'identifiant d'ensemble de fichiers pourrait être utile lorsque vous placez un tas de fichiers dans le système de fichiers qui forment une sorte d'unité logique (un "ensemble"), mais ils ne forment pas intuitivement un "volume"; par exemple, "Mariah Carey .gifs 1994-1998" ou "Bob's high school essays".

András Korn
la source
0

Logiquement, ces champs existent tous pour contenir des données dont certains membres (ou membres) du comité qui ont élaboré et / ou modifié la norme ont vu le besoin. Ce n'est pas parce que quelqu'un pense que c'est un gaspillage d'espace sur le disque qu'il n'y avait pas une ou plusieurs opinions sur la question lorsque la norme a été convenue. En fait, un ou plusieurs membres du comité les ont jugés suffisamment utiles pour un but ou un autre qu'ils ont fait entrer dans la norme. Je dis que tout ce qui n'est pas explicitement défini dans une norme est sujet à interprétation et peut donc être utilisé à n'importe quelle fin que vous désirez ou ignoré en toute sécurité jusqu'à ce qu'il soit explicitement défini par la norme. Du point de vue de la création de logiciels, 'mkudffs' n'a pas besoin de définir à quoi vous devez utiliser ces champs,

Elder Geek
la source
0

Je pense que ces valeurs s'orientent sur d'autres spécifications, qui elles-mêmes tentent de généraliser la gestion des médias. Dans mon exemple, je ferai référence à Linux, mais cela ne signifie pas, cela ne s'appliquerait pas à Windows. Ces spécifications. sont juste cachés là-bas.

Exécutez la cmd suivante sous Linux et regardez la sortie: blkid

/ dev / x: LABEL = "Windows" UUID = "?" TYPE = "ntfs" PARTLABEL = "Partition de données de base" PARTUUID = "?"

/ dev / y: LABEL = "Linux" UUID = "?" TYPE = "ext4" PARTLABEL = "stockage" PARTUUID = "?"

Comme vous pouvez le voir, il y a 2 champs de description pour chaque:

  • Cloison
  • FileSystem sur cette partition

Dans les deux cas, le premier est la description lisible par l'homme et le second la description de la machine. Tout comme dans le système de noms de domaine (DNS), car la description de la machine - l'UUID - doit être unique. On peut donc parler de nx 2 x 2 champs de données, pour les partitions. Mais, comme le support optique n'est pas partitionné, le support brut compte comme partition proprement dite. Ce qui signifie qu'il y a toujours 2 x 2 = 4 attributs. Essayons d'ajuster les propriétés UDF dans l'exemple ci-dessus:

/ dev / x: LABEL = "LVID" UUID = "VID" TYPE = "UDF" PARTLABEL = "VSID" PARTUUID = "FSID"

J'ai cherché pendant des heures et lu de nombreux articles, mais je n'ai pas pu le vérifier. Ce n'est donc qu'une hypothèse. Mais pour le LVID, il est assuré par définition du terme et par procès. Linux et Windows, ce dernier avec WinCDemu, utilisent cette propriété comme étiquette pour la partition. Qui, pour les supports optiques, est le support lui-même.

Cela correspond en fait assez bien, mais soulève une question. Il y a une propriété UUID supplémentaire et j'ai tendance à croire que c'est une erreur d'implémentation. Parce que j'ai lu une fois sur ce réseau, que cela a été mis en œuvre plus tard, car ppl. n'ont pas pu monter de support UDF par UUID. Il peut donc s'agir d'une mauvaise compréhension des champs de propriété donnés. Je ne sais pas où l'UUID actuel est mis, mais blkid lit celui-ci comme UUID. Je ne sais pas s'il s'agit d'un pilote UDF ou d'un problème blkid. Peut-être que quelqu'un écrit un courrier avec un indice à la personne / au groupe correspondant.

WGRM
la source