Output from: sudo lvs --all -o +devices
root hp03 mwa-ao 18.62g root_mlog 100.00 root_mimage_0(0),root_mimage_1(0)
[root_mimage_0] hp03 iwi-ao 18.62g /dev/sda3(0)
[root_mimage_1] hp03 iwi-ao 18.62g /dev/sdc3(0)
[root_mlog] hp03 mwi-ao 4.00m 100.00 root_mlog_mimage_0(0),root_mlog_mimage_1(0)
[root_mlog_mimage_0] hp03 iwi-ao 4.00m /dev/sdd3(0)
[root_mlog_mimage_1] hp03 iwi-ao 4.00m /dev/sdb3(0)
/dev/sdb3 and /dev/sdd3 are surplus to my needs, and I want to remove them. As my mirrorlog is mirrored, I feel happy having it on /dev/sda3 and /dev/sdc3. I try to move the mirror log elsewhere:
# pvmove --name /dev/hp03/root_mlog_mimage_1 /dev/sdb3
Skipping mirror image LV root_mlog_mimage_1
All data on source PV skipped. It contains locked, hidden or non-top level LVs only.
No data to move for hp03
No dice. How can I unlock/unhide these volumes so that they can be moved? I hope the answer is not, remove the mirror and add it back, as there is several TB of data that I need to do this for.
Look at this http://www.sandelman.ca/mcr/blog/2012/02/05#lvm_mirroring__the_right_way
First try:
"--alloc anywhere" should enable mirrorlogs to be on same PV, then try pvmove. Perhaps it can be done in one command: