thin_migrate(8) System Manager's Manual thin_migrate(8)

thin_migrate

thin_migrate [options] --source-dev {device} --dest-dev {device}
thin_migrate [options] --source-dev {device} --dest-file {file}

thin_migrate copies provisioned data blocks from a thin device to another device or file. It is designed for cloning a read-only snapshot or thin volume within a live thin-pool. A metadata snapshot is required to read the data mappings.

Print help and exit.
Print version information and exit.
The input read-only thin device to copy.
The output device as the copy destination.
The output file as the copy destination.
Suppress output messages, return only exit code.
Specify the size of the data buffers, in megabytes.

Assuming that there's a thin snapshot 'vg/snap' to copy, we must first set the snapshot to read-only:

    $ lvchange vg/snap --permission r
Next, create a metadata snapshot for running thin_migrate:
    $ dmsetup message vg-mythinpool-tpool 0 reserve_metadata_snap
Once the metadata snapshot is created, copy the snapshot into another linear or thin volume. The destination volume must have the same size as the source device.
    $ thin_migrate --src-device /dev/vg/snap --dest-device /dev/vg2/dest
Alternatively, copy the snapshot into a file. thin_migrate can optionally create the destination file if it is not present, or the size of the file will be truncated to match that of the source device.
    $ thin_migrate --src-device /dev/vg/snap --dest-file dest.bin
Finally, release the metadata snapshot after thin_migrate finishes its job:
    $ dmsetup message vg-mythinpool-tpool 0 release_metadata_snap

thin_migrate returns an exit code of 0 for success or 1 for error.

Joe Thornber <ejt@redhat.com>

Device Mapper Tools System Manager's Manual