Может ли Windows читать неразмеченный том NTFS? (Один большой раздел)

Может ли Windows читать неразмеченный том NTFS? (Один большой раздел)

Итак, по разным причинам я остановился на одном логическом томе Linux объемом 45 ТБ без таблицы разделов, отформатированном как NTFS и содержащем 28 ТБ данных (сама файловая система имеет размер 28 ТБ).

Файловая система была создана в Linux и монтируется Linux. Проблема возникает, когда я пытаюсь смонтировать ее в виртуальной машине Windows на базе KVM на том же компьютере. Windows не видит файловую систему размером 28 ТБ, а видит диск размером 1,8 ТБ, содержащий несколько бесполезных разделов случайного размера.

Вывод «Управления дисками», показывающий Disk1 с разделами случайного размера

Я предполагаю, что это происходит потому, что Windows пытается прочитать первые несколько байтов реальных данных файловой системы NTFS как таблицу разделов.

Я вижу несколько возможных решений этой проблемы, но не могу понять, как на самом деле реализовать хоть одно из них:

  • Прочитала ли Windows неразмеченный диск (один том) как файловую систему?
  • Можно ли каким-то образом создать таблицу разделов на этом логическом томе, не уничтожая данные, хранящиеся в самой файловой системе?
  • Каким-то образом подделать таблицу разделов, указывающую на том LVM, и экспортировать ее в гостевую систему KVM (работающую в libvirt)

Текущая «таблица разделов», по данным 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

решение1

У меня была похожая проблема, когда я случайно создал образ раздела, а не диска. Образы копировались по сети, и у меня не было времени скопировать их снова. Однако они были намного меньше 28 ТБ, и я использовал процесс, который требовал создания копии образа.

Первоначальное изображение было получено с помощью:

dd if=/dev/sda1 of=/image.bin

Чтобы добавить таблицу разделов, не копируя все по сети, я скопировал в файл только MBR.

dd if=/dev/sda of=/mbr.bin bs=512 count=1

Затем я добавил mbr и скопировал данные.

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)

После завершения /newfile.binбудет получена полная таблица разделов + данные.

решение2

На самом деле я не нашел хорошего решения этой проблемы. К счастью, есть еще одна полка для дисков с ~30 ТБ пространства, которую я могу использовать для миграции на новый том с разделами. Это займет много времени, но должно сработать.

Было высказано предположение, что с помощью этого можно сделать что-то умное.Linux Device Mapper(создание виртуального устройства, которое сопоставляет фальшивую таблицу разделов GPT из файла с логическим томом LVM), но я оставлю это для более умного человека.

Редактировать:На самом деле закончилось тем, что я написал решение этой проблемыздесь

решение3

Диску объемом более 2 ТБ необходимо использовать таблицу разделов GPT. Для диска объемом <2 ТБ достаточно MBR.

Связанный контент