cClaude.rocks ☕ Le blog

[Nouvelles technologies, sciences et coups de gueule…]

Menu

Les fichiers img sont des images disques que l’on peut monter sur un système Linux pour les lire, mais il est également possible de modifier le contenu.

sudo mkdir -vp "/media/${USER}/LOOP_SD"
sudo mount -t auto -o loop /CHEMIN/SD.img "/media/${USER}/LOOP_SD"

Effectuer vos modifications et pensez à démonter ce média :

sudo umount "/media/${USER}/LOOP_SD"


Cependant, il y a un cas plus délicat, il s’agit des fichiers img contenant plusieurs partitions.

La première étape consiste à comprendre la géométrie de ce “disque virtuel“ à l’aide de la commande fdisk :

fdisk -lu /CHEMIN/SD.img

Ce qui vous donnera quelque chose comme :

Disk /CHEMIN/SD.img: 22,73 GiB, 24389877760 bytes, 47636480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x156cf9e5

Device            Boot  Start      End  Sectors  Size Id Type
/CHEMIN/SD.img1          8192   532479   524288  256M  c W95 FAT32 (LBA)
/CHEMIN/SD.img2        532480 47636479 47104000 22,5G 83 Linux

Les valeurs importantes ici sont :

  • La taille des secteurs : 512 octets
  • La position de démarrage de la partition : 8192 pour la première partition et 532480 pour la seconde.

Ensuite pour monter la partition vous devrez calculer la position en octets du début de la partition en multipliant le numéro de secteur du début de la partition par la taille des secteurs.

Ce qui se fait comme suit :

sudo mount -t auto -o loop,offset=$((START_SECTOR*SECTOR_SIZE)) FICHIER_IMAGE DOSSIER_DE_MONTAGE

Et concrètement vous devrez écrire quelque chose comme cela :

sudo mkdir -vp "/media/${USER}/LOOP_SD"
sudo mount -t auto -o loop,offset=$((532480*512)) /CHEMIN/SD.img "/media/${USER}/LOOP_SD"

Vous pouvez aller faire vos modifications dans arborescence : /media/${USER}/LOOP_SD et vous devrez ensuite démonter la partition à l’aide de :

sudo umount "/media/${USER}/LOOP_SD"


Références

ᦿ


ℹ 2006 - 2022 | 🏠 Accueil du domaine | 🏡 Accueil du blog