5

Поддерживает ли NTFS (или любая файловая система) файлы за пределами раздела?


Итак, на моем диске C: был файл с именем BOOTSECT.BAK. Не зная, что это такое, я открыл его в HxD, и первые 14 байтов были B \0 O \0 O \0 T \0 M \0 G \0 R \0 соответствующие строке UTF-16LE BOOTMGR. После некоторых исследований я обнаружил, что это VBR для Windows. Это установлено в секторе 63 (или 2048 на Vista +).

После дополнительных исследований, это оказывается копия VBR, а не фактическая вещь. Это смутило меня, так как я почти уверен, что где-то слышал, что Windows предоставляет свой собственный файл где-то в C:\Windows\System32 или C:\Windows\boot. Я также слышал, что Windows назначает MBR файл в одном из этих каталогов.

TL; DR: может ли NTFS (или любая другая файловая система) назначить файл за пределами раздела? Скорее всего, с отрицательными целыми числами или LBA начального сектора (т.е. -2048 для смещения сектора или 2048 для LBA)

Ответов: 3

4
Does NTFS (or any file system) support files outside of the partition?

Не так много в Windows, но в вариантах Unix, и в зависимости от того, как вы определяете, что такое файл, вы найдете файловые системы, поддерживающие файлы вне раздела.

  • Файлы поддержки tmpfs хранятся частично или полностью в оперативной памяти.
  • procfs содержит файлы в/proc/pid/fd /, которые определенно принадлежат другим файловым системам
  • в/dev (или/devices) у вас есть «файлы», содержимое которых находится за пределами раздела. Через них вы можете получить доступ к VBR и MBR (например:/dev/sda1,/dev/dsk/c0d0t0p1, ...).
  • Все файловые системы, поддерживающие символические ссылки, также могут сортировать файлы из других мест.

Похоже, что установка cygwin предоставит каталог/dev, из которого вы сможете получить доступ к полным исходным данным дисков и разделов, включая VBR и MBR.

Тем не менее, эти каталоги являются просто точками монтирования в другой файловой системе, как я упоминал ранее. Доступ к файлам и подкаталогам в этих точках монтирования полностью обходит файловую систему на один уровень выше (т.е. я монтирую свою основную EXT4 FS в /, а монтирую свой RAMDISK в /tmp файлы в /tmp не имеют ничего общего с EXT4 FS, только с RAMDISK). Это то же самое, что точки монтирования под Windows. (23 декабря '12 в 16:08)

@Breakthrough tmpfs, procfs и символические ссылки были только примерами. Реальный ответ -/dev. Его записи не на всех точках монтирования. Это файлы специального вида (символьные и блочные устройства), содержащие данные вне текущей файловой системы, и один из них начинается с BOOTMGR в кодировке UTF-16LE, в случае Коула. (23 декабря '12 в 20:47)
6

Может ли NTFS (или любая другая файловая система) назначить файл за пределами раздела?

Нет, разве это не лишит цели файловую систему? Если вы просто хотите манипулировать необработанными нулями и единицами, хранящимися на диске вне вашего раздела, есть множество низкоуровневых инструментов для работы с дисками, которые вы можете использовать. Вы также можете смонтировать другой раздел в смонтированном разделе NTFS (т.е. вы можете смонтировать другой раздел в C:\MyNewVol\ ), если файлы хранятся в другой файловой системе.

Те конкретные файлы, которые вы описали выше, называются метафайлами и хорошо определены в соответствии со спецификацией NTFS. См. Предыдущую ссылку для описания различных метафайлов (например, упомянутый вами VBR хранится в метафайле $Boot ) и того, где они расположены на диске относительно границ раздела NTFS.

Кроме того, что касается всей MBR против VBR, со страницы Википедии на VBR :

[VBR] является первым сектором отдельного раздела на устройстве, причем первый сектор всего устройства является главной загрузочной записью (MBR), содержащей таблицу разделов.

Таким образом, вы можете получить доступ к VBR через файловую систему NTFS (при условии, что у вас есть соответствующие разрешения для этого), но вы не можете получить прямой доступ к MBR; для этого вам нужны низкоуровневые дисковые инструменты.

1

Файловые системы только адресуют данные внутри своего выделенного пространства.

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

Различие между ОС и ФС может быть небольшим, но оно жизненно важно.

Дополнить ответ

Server-Help.Ru - 2019. The website content is licensed CC BY NC SA 4.0. <|> Политика Конфиденциальности