`mount -o loop` change le fichier image ISO monté

22

Il ressemble à des mount -o loopmodifications du fichier image monté. J'ai téléchargé le fichier image ISO et vérifié sa somme de contrôle SHA-1. Ensuite, j'ai monté ce fichier ISO et la somme de contrôle a changé. Voici les étapes exactes que j'ai faites, un copier-coller de ma console, CentOS 7 x64 (notez que ce fichier ISO est en lecture seule):

[mbartnicki@89-78-33-81 Downloads]$ ls -lh
total 3.1G
-r--r--r--. 1 mbartnicki mbartnicki 3.1G Mar 31 18:28 X17-58997.iso
[mbartnicki@89-78-33-81 Downloads]$ sha1sum X17-58997.iso 
6c9058389c1e2e5122b7c933275f963edf1c07b9  X17-58997.iso
[mbartnicki@89-78-33-81 Downloads]$ sudo mount -o loop X17-58997.iso /mnt/iso/
mount: /dev/loop0 is write-protected, mounting read-only
[mbartnicki@89-78-33-81 Downloads]$ sha1sum X17-58997.iso 
994944df320e9e03c032263d7b9e36157a0a587c  X17-58997.iso

J'ai été tellement surpris que j'ai répété les étapes ci-dessus sur une autre machine (Ubuntu 14.04 x64), juste pour obtenir le même résultat: la somme de contrôle des fichiers a changé après mount -o loop. Le démontage de l'image ISO ne ramène pas sa somme de contrôle à sa valeur d'origine; le changement de fichier est persistant. De plus, le montage suivant modifie à nouveau la somme de contrôle en une nouvelle valeur. Comment l'expliquer?

PS

Le montage en lecture seule en ajoutant l' rooption de montage empêche la modification du fichier, de sorte que si j'utilise:

sudo mount -o ro,loop X17-58997.iso /mnt/iso

alors tout est OK, et le fichier image ISO reste inchangé après le montage. Le mauvais comportement se produit uniquement lorsque l' rooption n'est pas spécifiée, même si le fichier image ISO est en lecture seule au niveau du système de fichiers. J'ai essayé sur trois images ISO différentes: DVD d'installation de Windows 7 (officiel), SystemRescueCD (petit sauvetage Linux) et ISO fait à la main créé par l' genisoimageoutil.

J'ai vérifié tous ces fichiers ISO avec fileutilitaire et j'ai filedit que tous étaient des données du système de fichiers CD-ROM ISO 9660 . Les fichiers à l'intérieur des images ISO ne sont pas modifiés - je l'ai également vérifié - il semble que le scénario de montage défectueux ajoute des métadonnées ou simplement des ordures.


la source
Qu'est-ce que le sha1sum après le démontage?
Volker Siegel
Pouvez-vous essayer avec une image iso vide, créée par genisoimage -o empty.iso emptydir?
Volker Siegel
pouvez-vous essayer de créer un nouveau périphérique de boucle et essayer de le monter iso? Vous pouvez mknod -m 660 /dev/loop1 b 7 1également utiliser après l'exécutionchmod 660 /dev/loop*
Simply_Me
Le démontage de @VolkerSiegel ne renvoie pas la somme de contrôle précédente. Le fichier est changé pour de bon. Mais merci de l'avoir signalé, je vais modifier ma question pour inclure cette information.
2
Rapport de bogue similaire au tableau de bord: boucle de montage -o .... change l'image udf
Volker Siegel

Réponses:

1

Iso n'est pas synonyme de lecture seule, dans certaines circonstances, vous souhaiterez peut-être monter une lecture / écriture iso (lors de la création d'un support de démarrage).

Si vous voulez en lecture seule, utilisez l'option

 mount -o ro,iso
Archemar
la source
3
Mon fichier ISO était en lecture seule par les autorisations du système de fichiers et il était monté en lecture seule comme indiqué dans la sortie de montage.