Linux에서 소프트웨어 RAID4로 특정 드라이브에 쓰기


0

의견의 결론을 반영하여 편집 됨 :

필자는 패리티 장치가 두 개의 다른 장치의 XOR을 유지 관리하는 2 개의 저장 장치와 하나의 패리티 장치가있는 소프트웨어 RAID 형 배열을 구성하려고합니다.

이는 RAID3 또는 RAID4를 연상케합니다. 단, 기본 장치를 모두 마운트하고 평소와 같이 장치에 쓸 수 있으며 XOR은 장치에 대한 각 쓰기로 업데이트됩니다. 이것은 또한 내가하는 것을 의미한다. 아니 내 데이터 스트라이핑을 원해.

요약하면, 나는 두 개의 장착 된 장치의 데이터를 자유롭게 저장할 수있는 배열을 원하고, 두 개의 장치에 대한 최신 XOR을 가진 세 번째 장치를 원한다.

표준 Linux RAID4 / mdadm은 (1) 디스크간에 파일을 줄이 (2)하여 개별 디스크를 마운트하지 못하기 때문에 저에게 적합하지 않습니다.


1
기본 디스크에 직접 쓸 수있는 구현을 작성한 경우 효과적으로 배열을 손상시키기 때문에 RAID4가 아닙니다. RAID 장치를 사용하면 RAID를 사용할 수 있습니다. RAID를 사용하지 않으면 RAID를 사용할 수 있습니다.
Paul

달성하고자하는 것이 무엇입니까? 귀하의 질문에서 불가능하거나 귀하의 데이터에 좋지 않은 것을 성취하고자하는 것 같습니다.
Uwe Plonus

필자가 선택한 하나의 디스크에 기록 할 때마다 다른 디스크에서 패리티가 업데이트되도록 배열을 구성하려고합니다.
eitan27

그것이 바로 당신이 한 일입니다. / dev / md0에 기록하면 스트라이프의 처음 두 디스크에 데이터를 기록하고 마지막 디스크로 패리티를 기록합니다.
Paul

좋아, 좋아,이 문제의 핵심은 다음과 같다 : 나는 내가 원하는 특정 파일을 가지고있다. 특유한 장치. / dev / md0에 쓰기는 아니 주어진 파일이 저장된 장치를 자유롭게 선택할 수있는 기회를주십시오. 뿐만 아니라 파일은 스트라이프됩니다. 이는 파일의 조각이 다른 장치에 있음을 의미합니다.
eitan27

답변:


1

당신은 할 수 없습니다. 유일한 표준 형태의 RAID 스트라이핑을하지 않는 스트레이트 미러 인 RAID-1입니다.

EMCs RAID-S가 원하는대로 작동 할 수는 있지만 EMC 하드웨어에 구현 된 독점 솔루션입니다 (더 이상 사용되지 않음).

네, 직접 작성해야합니다. 하지만 사용자와 실제 미디어 사이에는 의사 장치가 항상있을 것입니다. 이는 무결성이 유지되도록하기 위해 디스크에 쓰기와 패리티 디스크에 쓰기를 모두 원자 단위로 간주해야하기 때문입니다.

따라서이 경우 물리적 미디어에 직접 쓸 수없고 RAID 시스템에서이를 감지하고 이벤트가 끝난 후 패리티를 계산하게 할 수 있습니다. 이것이 가능한 경우 패리티 쓰기 부분이 중단되면 데이터가 손상되었는지 여부를 알 수 없습니다. 즉 패리티가 작성되지 않았기 때문에 패리티가 다릅니 까 아니면 디스크의 데이터가 손상 되었기 때문에 패리티가 다릅니다.


0

UNRAID가 필요할 수도 있습니다. 그들은 3 디스크 (2data / 1parity)에 대한 무료 버전이 있습니다. 시스템은 USB 펜으로 부팅 / 실행됩니다. 그것에 대한 좋은 점은 읽기 전용 디스크에 액세스 할 파일이있는 디스크 만 스핀 업하고 쓰는 디스크 만 쓰고 파티 디스크가 회전한다는 것입니다. 자세한 정보는에서 찾을 수 있습니다. 이리 . 위키에는 오래된 정보가 있으므로 조심하십시오. 그러나이 포럼은 꽤 적극적이며 커뮤니티는 꽤 우호적 인 것처럼 보입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.