Esta pregunta se responde como parte de la respuesta a otras preguntas, pero merece un tratamiento canónico aquí, por lo que no tiene que repetirse.
No puede montar la imagen como un todo porque en realidad contiene dos particiones y un sector de arranque. Sin embargo, puede montar las particiones individuales en la imagen si conoce su desplazamiento dentro del archivo. Para encontrarlos, examine la imagen como un dispositivo de bloque con fdisk -l whatever.img
. La salida debe incluir una tabla como esta:
Device Boot Start End Blocks Id System
whatever.img1 8192 122879 57344 c W95 FAT32 (LBA)
whatever.img2 122880 5785599 2831360 83 Linux
Estas son las dos particiones. El primero está etiquetado "FAT32", y el otro "Linux". Encima de esta tabla, hay otra información sobre el dispositivo en su conjunto, que incluye:
Units: sectors of 1 * 512 = 512 bytes
Podemos encontrar el desplazamiento en bytes multiplicando el tamaño de esta unidad por el Start
bloque de la partición:
- Primera partición 512 * 8192 = 4194304
- 2da partición 512 * 122880 = 62914560
Estos se pueden usar con la offset
opción del mount
comando. También tenemos una pista sobre el tipo de cada partición fdisk
. Entonces, suponiendo que tengamos directorios /mnt/img/one
y /mnt/img/two
estén disponibles como puntos de montaje:
mount -v -o offset=4194304 -t vfat whatever.img /mnt/img/one
mount -v -o offset=62914560 -t ext4 whatever.img /mnt/img/two
Si obtiene un error de "bucle superpuesto" aquí, su versión mount
requiere que especifique el tamaño y el desplazamiento de la primera partición. Desmonta eso y usa el número de bloques (57344) * 512 (= 29360128):
mount -v -o offset=4194304,sizelimit=29360128 \
-t vfat whatever.img /mnt/img/one
La segunda partición no necesita un límite de tamaño, ya que no hay nada después en la imagen.
Ahora puede acceder a las dos particiones. Si no tiene la intención de cambiar nada en ellos, use el -r
interruptor (solo lectura) también. Si cambia algo, esos cambios se incluirán en el .img
archivo.
Tenga en cuenta que la primera partición probablemente esté montada /boot
en la segunda partición cuando el sistema se esté ejecutando.