.png)
Entonces, por varias razones, terminé con un volumen lógico Linux único de 45 TB, sin tabla de particiones, formateado como NTFS que contiene 28 TB de datos (el sistema de archivos en sí es de 28 TB).
El sistema de archivos fue creado en Linux y Linux puede montarlo. El problema surge cuando intento montar esto dentro de una máquina virtual Windows basada en KVM en la misma caja. Windows no ve un sistema de archivos de 28 TB, sino un disco de 1,8 TB que contiene algunas particiones inútiles de tamaño aleatorio.
Supongo que esto se debe a que Windows está intentando leer los primeros bytes de los datos reales del sistema de archivos NTFS como una tabla de particiones.
Puedo ver algunas posibles soluciones a este problema, pero no sé cómo ejecutar ninguna de ellas:
- ¿Windows ha leído un disco no particionado (un solo volumen) como un sistema de archivos?
- ¿Generar una tabla de particiones de alguna manera en este volumen lógico sin destruir los datos que se encuentran dentro del sistema de archivos?
- De alguna manera falsifica una tabla de particiones, apunta al volumen LVM y exporta esto al invitado KVM (ejecutándose en libvirt)
La "tabla de particiones" actual según lo informado por parted es:
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
Respuesta1
Tuve un problema similar en el que accidentalmente tomé una imagen de una partición en lugar de un disco. Las imágenes se estaban copiando a través de la red y no tuve tiempo de volver a copiarlas. Sin embargo, eran mucho más pequeños que 28 TB y utilicé un proceso que requería hacer una copia de la imagen.
La imagen inicial fue tomada usando:
dd if=/dev/sda1 of=/image.bin
Para agregar una tabla de particiones, sin copiar todo en la red, copié solo el MBR en un archivo.
dd if=/dev/sda of=/mbr.bin bs=512 count=1
Luego, antepuse el mbr y copié los datos.
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)
Una vez completo, /newfile.bin
tiene la tabla de particiones completa + datos.
Respuesta2
De hecho, no he encontrado una buena solución para esto. Afortunadamente, hay otro estante de unidades a mano con ~30 TB de espacio que puedo usar para migrar a un volumen recién particionado. Tardará mucho pero debería funcionar.
Hubo una sugerencia de que se podrían hacer algunas cosas inteligentes con elMapeador de dispositivos Linux(creando un dispositivo virtual que asigna una tabla de particiones GPT falsa a partir de un archivo, junto con el volumen lógico LVM), pero dejaré eso para que lo resuelva alguien más inteligente.
Editar:En realidad terminé escribiendo una solución a esto.aquí
Respuesta3
Los discos con más de 2 TB deben utilizar la tabla de particiones GPT. para disco <2TB MBR es suficiente.