Mount un peu plus loin

Bonjour à tous,

Truc et astuce pour bricoler…

Supposons que nous voulions faire de la récupe dans une image générée par qemu.
Disons qemu.img comme nom de l’image.

Il faut d’abord convertir l’image si elle n’est pas en raw:
qemu-img convert image.qemu -O raw image.img

puis récupérer quelques infos:

[color=#0000FF] fdisk image.img

Commande (m pour l’aide): u
Commande (m pour l’aide): p

Disque image.img: 0 Mo, 0 octets
255 têtes, 63 secteurs/piste, 0 cylindres, total 0 secteurs
Unités = secteurs de 1 * 512 = 512 octets

Périphérique Amorce Début Fin Blocs Id Système
image.img1 * 63 3566429 1783183+ 83 Linux
image.img2 3566430 4192964 313267+ 82 Linux swap / Solaris

Commande (m pour l’aide): q[/color]

l’info à récupérer est la position de la partition à monter = 63
[color=#0000FF]
echo $((512*63)) # nombre de secteur * taille des secteurs

32256[/color]

maintenant il faut accrocher la partition au porte manteaux loop:
[color=#0000FF]
losetup -f # cherche le premier loopback disponible

/dev/loop2[/color]

et on accroche:

losetup -o 32256 /dev/loop2 image.img

il suffit ensuite de monter la partition:

mount /dev/loop2 mnt

Les fichiers de la partition sont alors disponibles sous mnt.
nous pouvons même lancer qemu avec l’image montée, marrant non?

c’est le même principe pour la récupe dans une image d’un disque sauvegardé par dd:
dd if=/dev/hda of=image.img :wink:

Amusez vous bien :mrgreen:

Juste pour les lignes de commande en bleu …
la balise [code] est là pour ça.

Mais sinon tuto interessant

Merci Lou,

J’avais pas flashé dessus, il y a peu je me suis aussi aperçu que si tous mes mots étaient souligné en rouge il fallait que je fasse un clic droit pour choisir la langue … :cry:

j’essaie:

while ((opt = getopt(argc, argv, "wt:s:h")) != -1) { switch (opt) { case 'w': wait = YES; break; case 't': timeout = atoi(optarg); wait = YES; break; case 's': sleep = atoi(optarg); break; case 'h': default: /* '?' */ fprintf(stderr, "Usage: %s [-w (wait semaphore) -t (wait with timeout) -s (sleep before cont)] \n", argv[0]); exit(EXIT_FAILURE); } }

bon d’accord mais y a pas de couleur ?

Oui mais de toute façon dans ton code non plus.

Sauf que c’est plus clair ( et plus beau :blush: )