RAID1에 복제된 두 개의 하드 드라이브를 모두 다시 쓰지 않고 재구성하는 방법은 무엇입니까?

RAID1에 복제된 두 개의 하드 드라이브를 모두 다시 쓰지 않고 재구성하는 방법은 무엇입니까?

저는 기존 하드 드라이브를 복제하여 이제 두 개의 동일한 사본을 갖게 되었습니다. 이제 RAID1을 설정하고 싶지만 백업을 위한 다른 스토리지가 없고 복사본이 하나만 있을 위험을 감수하고 싶지 않기 때문에 추가된 디스크를 덮어쓰는 것을 피하고 싶습니다.

내 기억이 정확하다면 /dev/sdbRAID 없음 구성에서 추가하는 일반적인 절차는 다음과 같습니다./dev/sda/dev/sda

btrfs device add /dev/sdb /
btrfs balance start -dconvert=raid1 -mconvert=raid1

그러나 btrfs-device 매뉴얼에는 다음과 같이 나와 있습니다.

해당하는 경우 장치를 추가하기 전에 TRIM(전체 장치 폐기) 작업을 수행하십시오. blkid(8)로 기존 파일 시스템이 있는 장치를 감지하면 해당 장치가 추가되지 않으며 강제로 추가해야 합니다. 작업은 즉각적이며 기존 데이터에 영향을 주지 않습니다.

어떻게 실행해야 하나요?

답변1

btrfs의 바이트 단위 복제는 매우 위험합니다. 다음을 읽어 보십시오.

https://btrfs.wiki.kernel.org/index.php/Gotchas#Block-level_copies_of_devices

기존 btrfs를 btrfs RAID1로 변환하는 유일한 방법은 질문에서 언급한 명령을 실행하는 것입니다. 하지만 wipefs -a /dev/sdX확장하려는 btrfs를 설치해야 하고 커널에 표시되는 동안 블록 장치의 btrfs 복사본을 마운트하려고 시도하지 마십시오.
어느 시점에서 실수로 이 작업을 수행한 경우 복사본 중 하나 또는 둘 다 손상되었을 수 있으므로 최소한 확장하려는 btrfs에 대해 읽기 전용 읽기 전용 검사를 실행하십시오(이를 위해 시스템에서 다른 드라이브 연결을 끊습니다). ).

btrfs에 50% 이상의 여유 공간이 있는 경우 변환 시 항상 2개의 장치에 최소 2개의 복사본을 보관할 수 있지만 전체 드라이브 btrfs의 경우 이는 파티셔닝보다 어렵습니다.

관련 정보