`mount -o loop` cambia el archivo de imagen ISO montado

22

Parece que mount -o loopcambia el archivo de imagen montado. Descargué el archivo de imagen ISO y verifiqué su suma de comprobación SHA-1. Luego monté ese archivo ISO y la suma de verificación cambió. Estos son los pasos exactos que hice, copiar y pegar desde mi consola, CentOS 7 x64 (tenga en cuenta que el archivo ISO es de solo lectura):

[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

Me sorprendió tanto que repetí los pasos anteriores en otra máquina (Ubuntu 14.04 x64), solo para obtener el mismo resultado: la suma de comprobación del archivo cambió después mount -o loop. Desmontar la imagen ISO no devuelve su suma de comprobación al valor original; El cambio de archivo es persistente. Además, el siguiente montaje cambia la suma de comprobación nuevamente a algún valor nuevo. Como puede ser explicado?

PD

El montaje explícito de solo lectura al agregar la roopción de montaje evita que el archivo se cambie, de modo que si uso:

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

entonces todo está bien, y el archivo de imagen ISO dura sin cambios después del montaje. El comportamiento incorrecto ocurre solo cuando rono se especifica la opción, incluso si el archivo de imagen ISO es de solo lectura en el nivel del sistema de archivos. Probé tres imágenes ISO diferentes: DVD de instalación de Windows 7 (oficial), SystemRescueCD (Linux pequeño de rescate) e ISO hecho a mano creado por la genisoimageherramienta.

Revisé todos los archivos ISO con fileutilidad, y filedije que todos ellos son datos del sistema de archivos CD-ROM ISO 9660 . Los archivos dentro de las imágenes ISO no cambian, también lo verifiqué, parece que el escenario de montaje defectuoso agrega algunos metadatos o simplemente basura.


fuente
¿Cuál es el sha1sum después de desmontar?
Volker Siegel
¿Puedes probar con una imagen iso vacía, creada por genisoimage -o empty.iso emptydir?
Volker Siegel
¿Puedes intentar hacer un nuevo dispositivo de bucle e intentar montarlo iso? Puede usar mknod -m 660 /dev/loop1 b 7 1también después de la ejecuciónchmod 660 /dev/loop*
Simply_Me,
El desmontaje de @VolkerSiegel no devuelve la suma de comprobación anterior. El archivo ha cambiado para siempre. Pero gracias por señalar esto, voy a editar mi pregunta para incluir esta información.
2
Informe de error similar en launchpad: mount -o loop ... cambia la imagen udf
Volker Siegel

Respuestas:

1

Iso no es sinónimo de solo lectura, en algunas circunstancias, es posible que desee montar una lectura / escritura iso (al crear un medio de arranque).

Si desea solo lectura, use la opción

 mount -o ro,iso
Archemar
fuente
3
Mi archivo ISO era de solo lectura según los permisos del sistema de archivos, y estaba montado de solo lectura como se indica en la salida de montaje.