.png)
Então, por vários motivos, acabei com um volume lógico Linux único de 45 TB, sem tabela de partição, formatado como NTFS contendo 28 TB de dados (o próprio sistema de arquivos tem 28 TB).
O sistema de arquivos foi criado em Linux e pode ser montado em Linux. O problema surge quando tento montar isso em uma VM do Windows baseada em KVM na mesma caixa. O Windows não vê um sistema de arquivos de 28 TB, mas um disco de 1,8 TB contendo algumas partições inúteis de tamanho aleatório.
Presumo que isso ocorra porque o Windows está tentando ler os primeiros bytes dos dados reais do sistema de arquivos NTFS como uma tabela de partição.
Posso ver algumas soluções possíveis para esse problema, mas não consigo descobrir como executar nenhuma delas:
- O Windows leu um disco não particionado (volume único) como um sistema de arquivos?
- Gerar uma tabela de partição de alguma forma neste volume lógico sem destruir os dados mantidos no próprio sistema de arquivos?
- De alguma forma, falsifique uma tabela de partição, apontando para o volume LVM e exporte-a para o convidado KVM (executando em libvirt)
A "tabela de partição" atual conforme relatada por parted é:
Model: Linux device-mapper (linear) (dm)
Disk /dev/mapper/chandos--dh-data: 48.0TB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Number Start End Size File system Flags
1 0.00B 48.0TB 48.0TB ntfs
Responder1
Eu tive um problema semelhante em que acidentalmente criei uma imagem de uma partição em vez de um disco. As imagens estavam sendo copiadas pela rede e não tive tempo de copiá-las novamente. Eles eram, no entanto, muito menores que 28 TB, e usei um processo que exigia a realização de uma cópia da imagem.
A imagem inicial foi tirada usando:
dd if=/dev/sda1 of=/image.bin
Para adicionar uma tabela de partições, sem copiar tudo pela rede, copiei apenas o MBR para um arquivo.
dd if=/dev/sda of=/mbr.bin bs=512 count=1
Então, acrescentei o mbr e copiei os dados.
fdisk -l /mbr.bin
# take the start position * units in bytes (ex start at 256 * units of 512 bytes = 131072 bytes)
truncate -s (disk size in bytes + number of above) /newfile.bin
dd if=/mbr.bin of=/newfile.bin
dd if=/image.bin of=/newfile.bin oflag=seek_bytes seek=(number from above)
Depois de concluído, /newfile.bin
tem a tabela de partições completa + dados.
Responder2
Na verdade, não encontrei uma boa solução para isso. Felizmente, há outra prateleira de unidade útil com aproximadamente 30 TB de espaço que posso usar para migrar para um volume recém-particionado. Vai demorar muito, mas deve funcionar.
Houve uma sugestão de que algumas coisas inteligentes poderiam ser feitas com oMapeador de dispositivos Linux(criando um dispositivo virtual que mapeia uma tabela de partição GPT falsa a partir de um arquivo, juntamente com o volume lógico LVM), mas deixarei isso para alguém mais inteligente resolver.
Editar:Na verdade acabei escrevendo uma solução para issoaqui
Responder3
disco com mais de 2 TB precisa usar a tabela de partição GPT. para disco <2 TB MBR é suficiente.