Eu finalmente consegui esse trabalho graças a essa postagem do Stack Overflow: restauração do Windows Span Disks (LDM) com o Linux?
Foi extremamente difícil descobrir essa informação indescritível. Demorou dias pesquisando, e eu acho que eu não estava achando isso porque o post não faz menção ao RAID, então não estava aparecendo nos resultados da minha pesquisa. Definitivamente funciona para o meu software RAID 0 para Windows.
A solução:
A solução é bem simples. Existe uma ferramenta maravilhosa criada especificamente para esse propósito, chamada ldmtool
. Ele é capaz de ler e trabalhar com discos dinâmicos do Windows que usam o LDM (Logical Disk Manager). Não é instalado por padrão, mas está incluído nos repositórios do Ubuntu. Tudo o que eu tive que fazer foi executar dois comandos:
sudo apt-get install ldmtool
sudo ldmtool create all
O primeiro comando instala ldmtool
e o segundo cria automaticamente mapeamentos de dispositivos para todos os discos dinâmicos do Windows conectados. Esses mapeamentos estão localizados em /dev/mapper/
e podem ser montados manualmente com mount -t ntfs /dev/mapper/mapfilename
, mas eu não precisei fazer isso - o Ubuntu os montou para mim automaticamente depois que eu executei os dois comandos acima. Foi tudo o que tive que fazer e consegui acessá-los imediatamente no navegador de arquivos!
A postagem vinculada inclui uma sugestão para fazer isso automaticamente a cada inicialização. Basta abrir o arquivo /etc/init/mountall.conf
e adicionar a linha [ -x /usr/bin/ldmtool ] && ldmtool create all >/dev/null || true
imediatamente antes da linha exec mountall ...
perto do final do arquivo.
O crédito total por essa solução vai para Christian Hudon, o cara que postou isso como uma resposta no Stack Overflow. Obrigado!
Para adicionar mais algumas informações, usei outros comandos ldmtool
para consultar meus volumes em busca de informações:
sudo ldmtool scan /dev/sdd
[
"e856a65f-e558-11e1-ae19-bc5ff435f790"
]
sudo ldmtool show diskgroup e856a65f-e558-11e1-ae19-bc5ff435f790
{
"name" : "Dan-PC-Dg0",
"guid" : "e856a65f-e558-11e1-ae19-bc5ff435f790",
"volumes" : [
"Volume1",
"Volume2"
],
"disks" : [
"Disk1",
"Disk2",
"Disk3"
]
}
sudo ldmtool show volume e856a65f-e558-11e1-ae19-bc5ff435f790 Volume1
{
"name" : "Volume1",
"type" : "striped",
"size" : 1048578048,
"chunk-size" : 128,
"hint" : "D:",
"partitions" : [
"Disk1-01",
"Disk2-01",
"Disk3-01"
]
}
sudo ldmtool show volume e856a65f-e558-11e1-ae19-bc5ff435f790 Volume2
{
"name" : "Volume2",
"type" : "striped",
"size" : 4811194368,
"chunk-size" : 128,
"hint" : "E:",
"partitions" : [
"Disk1-02",
"Disk2-02",
"Disk3-02"
]
}
Não é necessário executar os comandos acima, pois ldmtool create all
faz todo o trabalho necessário para criar os mapeamentos. Eu acabei de incluí-los porque já incluí informações sobre minha configuração na pergunta, portanto, essas informações podem ser úteis para qualquer pessoa que se deparar com essa postagem posteriormente. Em particular, podemos ver que, de acordo com ldmtool
, ambos os meus volumes dinâmicos usam um tamanho de bloco de 128, apesar de terem sido criados com tamanhos de bloco diferentes no Windows. Eu acho que isso significa que tamanho de bloco e tamanho de bloco não são sinônimos. Os comandos ldmtool show disk
e ldmtool show partition
podem ser usados para exibir informações adicionais.