Igor Fedotov wrote:
Hi chenhui,
there is still a work in progress to support multiple labels to avoid the issue (https://github.com/ceph/ceph/pull/55374). But this is of little help for your current case.
If your disk is fine (meaning it's able to read/write block at offset 0) you might want to try to recover the label using label from a different OSD sitting on a similar(!!that's important!!!) main device. One needs to update osd uuid, whoami and osd_key fields after copying though. Here is the step-by-step procedure:
1. Copy OSD label (4K data block at offset 0) from source OSD's main device to the same location on the broken one:
dd if=<source_osd_block_device> of=<target_osd_block_device> count=1 bs=4096
Hi, Igor I am repairing the lost label problem. But I have doubt about what's mean "similar main device"? Our OSD and disk have a one-to-one relationship, without disk partitions. How can I find source_osd_block_device ? thanks