
다양한 디스크에 분산된 여러 물리적 볼륨(PV)으로 구성된 단일 볼륨 그룹(VG)이 있습니다. 이제 디스크 A에 있는 모든 PV를 새 디스크 B로 이동하고 싶습니다. 그러나 디스크 B만 추가할 슬롯이 충분하지 않기 때문에 세 번째 디스크 C(관련 PV도 포함)를 일시적으로 제거해야 합니다. 동일한 VG)에 작업 기간 동안. 나중에 디스크 A가 더 이상 필요하지 않으면 디스크 C를 위한 공간이 다시 확보됩니다.
이제 내 질문은: 누락된 디스크 C가 디스크 A에서 디스크 B로 PV를 이동하는 데 영향을 미칠까요?
물론, 여러 루프백 장치를 사용하여 시험 실행해 볼 수도 있습니다. 그러나 그것이 테스트 실행에 효과가 있다고 해도 실제로 그것이 맞는지는 확신할 수 없습니다.지정된작동합니다(따라서 실제 데이터로 인해 데이터 손실이 발생하지 않습니다).
답변1
디스크 C의 LV가 디스크 C에만 있는 경우 다음을 수행할 수 있습니다.vgsplit(8)디스크 C를 새 VG에 넣은 다음 디스크 C를 제거하고 필요한 작업을 수행합니다(아마도pvmove(8)), 그런 다음vgmerge(8):
vgsplit existingVG newVG PV
# ...do what you need here...
vgmerge existingVG newVG
LV가 디스크 C와 다른 디스크에 있는 경우 디스크 C를 제거한 후 부분 LV를 얻을 수 있으며 LVM은 --partial
옵션으로 부분 장치 활성화를 허용하지만 그러한 VG 변경을 허용하지 않습니다(실행해야 vgreduce --removemissing VG
하지만 이는 실행하는 것이 아닙니다). 원하다.)
dd: 라이브 CD를 부팅하고 실행하여 오프라인으로 수행할 수 있습니다 dd if=/dev/OLDPV of=/dev/NEWPV bs=1M
. 나중에 파티션 크기를 조정해야 할 수도 있는데 이는 쉽지 않습니다. 그러나 최소한 "백업"이 있습니다(물론 인수를 dd로 전환하지 않는 한).