Il ressemble à des mount -o loop
modifications 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' ro
option 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' ro
option 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' genisoimage
outil.
J'ai vérifié tous ces fichiers ISO avec file
utilitaire et j'ai file
dit 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.
genisoimage -o empty.iso emptydir
?
iso
? Vous pouvez mknod -m 660 /dev/loop1 b 7 1
également utiliser après l'exécutionchmod 660 /dev/loop*