NT4 SP6. Закрываю тему — если кому надо чего, пишите в приват.10.05.04 11:43 Число просмотров: 1738 Автор: HandleX <Александр М.> Статус: The Elderman Отредактировано 10.05.04 11:45 Количество правок: 1
Возникла проблема: крякнула система NT4 — затёрли ntldr ;-)
Подняли на XP. XP взяла и при подключении этого раздела быстренько "заапгрейдила" его до NTFSv5. И всё бы хорошо, только теперь на NT4 при попытке выполнить «chkdsk c: /f» выдаёт ошибку типа «этот том создан более поздней версией виндоус, вот её и используйте для проверки этого тома» ;-)
Как пролечить это дело, есть у кого какие идеи?
Я знаю, что всё различие в каких-то скрытых служебных файлов NTFS, но ни как к ним достучаться, ни что с ними делать, представления не имею.
А какой SP у NT твоей?08.05.04 17:56 Автор: tduty Статус: Незарегистрированный пользователь
NT4 SP6. Закрываю тему — если кому надо чего, пишите в приват.10.05.04 11:43 Автор: HandleX <Александр М.> Статус: The Elderman Отредактировано 10.05.04 11:45 Количество правок: 1
Проблема решена... Написал тулзу на досуге. Спасибо всем за поддержку ;-) Тулза лежит по линку (внутри). Используется на свой страх и риск, но должна вести себя корректно... Позволяет установить _любой_ номер версии NTFS для существующего NTFS-раздела ;-)05.05.04 19:24 Автор: HandleX <Александр М.> Статус: The Elderman Отредактировано 10.05.04 11:50 Количество правок: 1
> Возникла проблема: крякнула система NT4 — затёрли ntldr ;-) > Подняли на XP. XP взяла и при подключении этого раздела > быстренько "заапгрейдила" его до NTFSv5. И всё бы хорошо, > только теперь на NT4 при попытке выполнить «chkdsk c: /f» > выдаёт ошибку типа «этот том создан более поздней версией > виндоус, вот её и используйте для проверки этого тома» ;-) > > Как пролечить это дело, есть у кого какие идеи? > Я знаю, что всё различие в каких-то скрытых служебных > файлов NTFS, но ни как к ним достучаться, ни что с ними > делать, представления не имею.
Надо заранее ставить Acronis OS Selector 8.0
даже при затертом NTDLR Восстановит любую NT начиная с 4.0 и кончая "2003".
У Acronis OS Selector есть одна мелкая неприятность29.11.03 01:05 Автор: Ktirf <Æ Rusakov> Статус: Elderman
ПРАВКА ВЕРСИИ НТФС5 на НТФС4
С помощью DiskProbe из ResourceKit
>>>
В системном файле #3 $VOLUME со смещением 0x130 (или 0х1C0 !!!)
находится номеp веpсии NTFS. (убрать предварительно метки дисков !!!)
W2K пpи обpащении к диску пpисваивает номеp 3.0,
NT4 pаботает с веpсией 1.2.
Находишь 0x03, испpавляешь на 0x01,
следующий байт с 0x00 на 0x02. После
этого запускаешь CHKDSK, следишь за тем,
как он отшибает новые атpибуты (типа дисковых квот и пp.).
После этого - пользуешься...
---
Но есть вопросы! Почему два смещения (0x130 и 0х1C0)?
Хочу прогу написать... Как открыть файл #3 на $VOLUME, расскажите, плз.
Точно того же эффекта, что и открытие спецфайла $Volume можно добиться открымши УСТРОЙСТВО "\\\\.\\C:" - тот же самый Raw-доступ к разделу. Предлагаю сначала глянуть по приведенным смещениям, а потом, если не поможет - будем посмотреть :-)
Читаться он читается20.11.03 19:26 Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
> при попытке открыть с правами GENERIC_READ | GENERIC_WRITE Там как-то можно вроде включить доступ для простых смертных, но я особо не ковырялся - легче устройство открыть, "если нет разницы, зачем платить больше?" :-) (с)
Diskedit.exe21.11.03 12:21 Автор: Den <Денис Т.> Статус: The Elderman
> Но есть вопросы! Почему два смещения (0x130 и 0х1C0)? Два смещения наверное потому, что эта информация хранится не в одной структуре, а в одном из аттрибутов (каждый из которых описывается структурой) собранных в массив. Чтобы представить что это такое - вспомни как возвращает данные NtQuerySystemInformation. То что данный аттрибут чаще всего лежит по одному и тому же смещению вовсе не означает, что он не может лежать где угодно еще. То бишь хоть ФС и создается всегда одной и той же программой при одних и тех же начальных условиях (форматирование чистого раздела), это еще не значит, что ее нельзя создать иначе.
Описывать как именно оно валяется не буду - слишком много и возможно излишне для решения данной конкретной проблемы (этот аттрибут скорее всего лежит там, где и было указано). Если интересно - могу скинуть на мыло доку.
> Хочу прогу написать... Как открыть файл #3 на $VOLUME, > расскажите, плз. Файл #3 это третья по счету запись в MFT (первые 16 записей - специальные и всегда жестко заданы), как уже указано, называется этот спецфайл $Volume, но наверное так было написано для вящей мудрости, потому как простому смертному открыть этот файл очень трудно, а там всего лишь содержится том. На самом деле, чтоб открыть том, нужно просто сделать CreateFile("\\\\.\\C:", ...) для диска C и т.д. по аналогии.
Успехов в бою. Не забудь снять образ :-)
А как «ходить» по записям MFT?21.11.03 08:40 Автор: HandleX <Александр М.> Статус: The Elderman Отредактировано 21.11.03 08:41 Количество правок: 1
> Файл #3 это третья по счету запись в MFT (первые 16 записей > - специальные и всегда жестко заданы), как уже указано, > называется этот спецфайл $Volume, но наверное так было > написано для вящей мудрости, потому как простому смертному > открыть этот файл очень трудно, а там всего лишь содержится > том. На самом деле, чтоб открыть том, нужно просто сделать > CreateFile("\\\\.\\C:", ...) для диска C и т.д. по > аналогии.
Насколько я понял, нужно:
1) CreateFile("\\\\.\\C:", ...).
Тут вопрос: остальные параметры какие должны быть?
Полученный хендл используется в ReadFile\WriteFile или в DeviceIOControl?
Если в DeviceIOControl, то какие должны быть Control Codes для чтения-записи?
2) сперва нужно открыть #1 запись (прочитать n-е кол-во байт)...
3) из этой записи извлечь размер MFT и «перейти» на #3...
4) сделать далее по алгоритму неизвестного дядьки, проконтролировав валидность версий NTFS по одному из смещений...
Вроде так?
А как «ходить» по записям MFT?29.11.03 11:33 Автор: vladig Статус: Незарегистрированный пользователь
А не проще ли взять Runtime's DiskExplorer for NTFS?
Он нормально правит и MFT, и атрибуты файлов. Правда, из-за того, что MS не документировала структуру NTFS, многие атрибуты файлов представлены только своими кодами, но разобраться/догадаться можно.
перепиши chkdsk от xp и не мучайся20.11.03 11:56 Автор: Cyril <sc> Статус: Member Отредактировано 20.11.03 12:00 Количество правок: 1