Normalmente, os dispositivos Linux mdadm
RAID são sempre um pouco menores que o tamanho dos dispositivos componentes (ou sua soma no caso do RAID 0), porque os dispositivos MD armazenam metadados.
Nesse caso, você usou --build
, que chama um modo de montagem manual que não usa metadados. No entanto, um array linear pode ser menor que a soma dos tamanhos dos dispositivos do componente porque os dispositivos MD usam um tamanho de bloco. Por favor, note a seguinte saída ou similar que você deve obter do seu comando:
mdadm: chunk size defaults to 64K
mdadm: array /dev/md0 started.
Isso significa que o array trabalha com pedaços de 65536 bytes. Por exemplo, se fosse uma matriz RAID0 (o que não é), os dados seriam intercalados com 65536 bytes em um componente, 65536 bytes no próximo e assim por diante.
Se houver bytes extras no final que não compõem um trecho completo, o array não poderá usá-los.
No modo linear, não tenho certeza se o MD irá arredondar o tamanho de cada componente para o múltiplo mais próximo de 65536 bytes, ou apenas arredondar para baixo o tamanho de toda a matriz. De qualquer forma, o tamanho de um de seus componentes, se não um múltiplo de 65536 bytes (os outros 2 são), resultando em um arredondamento para baixo de 65024 bytes - exatamente a discrepância que você viu.
A melhor maneira de mostrar o tamanho exato de um dispositivo de bloco é:
blockdev --getsize64 /dev/sda1
Então, se você pegar a soma de:
blockdev --getsize64 /dev/sda1
blockdev --getsize64 /dev/sda2
blockdev --getsize64 /dev/loop0
E o tamanho utilizável do array resultante que pode ser visto com:
blockdev --getsize64 /dev/md0
A propósito, eu acho que o array que você está tentando construir aqui é bem estranho e possivelmente perigoso. A utilidade de um array composto de dois dispositivos de bloco físico e um dispositivo de bloco virtual apoiado por um arquivo é estranho. Mais importante, você diz:
/dev/sda1
is a very small partition needed by the/dev/sda2
Windows 7 partition in order for Windows to boot properly.
Parece que você destruirá o Windows 7, mas se você sobrescrever essas partições com um dispositivo Linux MD RAID, o Windows não poderá mais usá-las!