• [^] # Re: Contenu de part.img ?

    Posté par (site web personnel) . En réponse au message Problème /dev/loop. Évalué à 2.

    Merci d'avoir mentionné cette option. Ça fait tellement longtemps que je joue avec losetup et kpartx que je n'ai pas relu les pages de manuel...

    Pour info ça semble dater de :

    commit 916bf85e621bb01d58279a014088376c80050a74
    Author: Karel Zak <kzak@redhat.com>
    Date: Mon Jan 9 23:27:53 2012 +0100
     losetup: add --partscan option
     Signed-off-by: Karel Zak <kzak@redhat.com>
    

    qui a été publié pour la première fois dans : v2.21-rc1.

    Si on veut le faire à la main, exemple rapide, avec une image de disque contenant 3 partitions :

    $ sudo losetup -f demo.img
    $ sudo kpartx -avs /dev/loop0
    add map loop0p1 (253:4): 0 2048 linear 7:0 2048
    add map loop0p2 (253:5): 0 1024000 linear 7:0 4096
    add map loop0p3 (253:6): 0 10440671 linear 7:0 1028096
    $ sudo kpartx -dvs /dev/loop0
    del devmap : loop0p3
    del devmap : loop0p2
    del devmap : loop0p1
    $ sudo losetup -D demo.img
    

    Quelques notes :

    • losetup accepte l'option --show permet de demander l'affichage du périphérique utilisé, pratique pour les scripts.
    • kpartx a besoin de -a / -d pour travailler, -v permet un affichage verbeux, -s le mode synchrone. À nouveau, pratique pour les scripts, ça évite de mettre un sleep ± long...
    • j'ai édité la sortie dans mon exemple ci-dessus. On peut avoir des petites blagues, par exemple l'activation automatique d'un groupe de volumes LVM (VG).

    Ce qui donnerait plutôt :

    $ sudo kpartx -dvs /dev/loop0
    device-mapper: remove ioctl on loop0p3 failed: Device or resource busy
    del devmap : loop0p2
    del devmap : loop0p1
    $ sudo vgchange -an le-vg-parasite
     0 logical volume(s) in volume group "le-vg-parasite" now active
    $ sudo kpartx -dvs /dev/loop0
    del devmap : loop0p3
    $ sudo losetup -D demo.img
    

    Debian Consultant @ DEBAMAX