mdadm은 부팅 시 레거시 어레이를 빌드합니다.

mdadm은 부팅 시 레거시 어레이를 빌드합니다.

Windows 동적 디스크를 사용하여 구축된 RAID0이 있습니다. 나는 이것이 레거시 배열이고 mdadm의 빌드를 사용하여 조립할 수 있다는 것을 읽었습니다. 다음 명령을 사용하여 어레이를 구축하고 마운트했습니다.

sudo mdadm --build /dev/md0 --chunk=64 --level=0 --raid-devices=2 /dev/sdc1 /dev/sdb1
sudo mount -t ntfs-3g /dev/md0 /media/raid

이것은 훌륭하게 작동합니다!

이제 부팅 시 이 어레이를 마운트하는 작업을 진행 중입니다. fstab에 다음 항목을 추가했습니다.

 /dev/md0 /media/raid ntfs-3g defaults,locale=en_US.utf8 0 0

이것이 내 문제가 발생하는 곳입니다. md0을 마운트하기 전에 먼저 조립해야 합니다. 내가 읽은 모든 내용에는 다음을 실행하라고 나와 있습니다.

sudo mdadm --detail --scan

그리고 출력을 mdadm.conf에 저장합니다. 그러나 출력은 다음과 같습니다.

ARRAY /dev/md0 metadata=

어레이는 레거시이므로 uuid나 메타데이터가 없으며 mdadm은 ARRAY /dev/md0conf 파일에서만 어레이를 빌드할 수 없습니다.

부팅 시 레거시 모드에서 RAID를 어셈블하려면 mdadm.conf에 무엇을 넣어야 합니까?

답변1

어셈블리용 어레이를 지정 하면 mdadm.conf"일반" 어레이에만 사용할 수 있고 레거시 어레이에는 사용할 수 없습니다. 맨페이지에는 레거시 어레이(빌드 모드)에 대해 다음과 같이 명시되어 있습니다.

이 사용법은 --create와 유사합니다. 차이점은 슈퍼블록 없이 배열을 생성한다는 것입니다. 이러한 배열을 사용하면 두 번째 경우에 유용한 데이터가 있을 것이라는 점을 제외하면 처음에 배열을 생성한 후 나중에 배열을 조립하는 것 사이에 차이가 없습니다.

따라서 이러한 배열은 조립되지 않습니다. 아마도 어레이가 성공적으로 구축되었는지 확인할 방법이 없기 때문인 것 같습니다. mdadm이 경우 원래 장치에 어떤 데이터가 있는지 신경쓰지 않고 새 장치만 만듭니다.

해결책은 모든 fstab 파일 시스템이 마운트되기 전에 호출되는 /etc/init.d(또는 )의 스크립트를 사용하여 부팅 시 어레이를 구축하는 것입니다./etc/rc.local

에서 다음 줄을 시도해 볼 수 있지만 mdadm.conf작동하지 않을 것 같습니다.ARRAY /dev/md0 level=0 devices=/dev/sdc1,/dev/sdb1

관련 정보