У меня есть виртуальная машина, содержащая Windows XP SP3.
Когда я изменил размер файла VHD (и встроенного раздела) и попытался загрузиться, я получил:
A disk read error occurred
Press Ctrl + Alt + Del to restart
Некоторые заметки:
FixBoot
иFixMBR
не помогают.ChkDsk
не помогает.Раздел действительно активен.
Перегородка начинается в секторе 63 (он также делал это до проблемы) цилиндра 1, головка 1, и отмечена как тип 0x07 (NTFS)
Мой хозяин OS читает виртуальный жесткий диск и раздел полностью нормально
Мне интересно знать причину, а не починку. Поэтому "переформатировать диск", "переустановить Windows" и т.д. Не являются допустимыми решениями.
В конце концов, это виртуальная машина ... Мне нечего терять, поэтому я не забочусь об этом.
Я просто хочу знать, что вызывает эту проблему, на случай, если я снова столкнусь с ней на физической машине (что я делал раньше).
Больше информации:
Я сделал образец VHD-файла, иллюстрирующий (почти) ту же проблему, которую вы можете скачать здесь.
Чтобы воспроизвести проблему:
Загрузите файл (он сильно сжат, будьте осторожны!) И попробуйте загрузить его в VirtualBox (или на другой виртуальной машине). Обратите внимание, что вам будет сказано "Ошибка загрузки операционной системы". (Хотя ошибка отличается, это та же проблема.)
Теперь попробуйте подключить виртуальный жесткий диск в разделе "Управление дисками" в Windows и запустите
BootSect.exe /NT60 X: /MBR
, гдеX:
буква диска подключенного тома. (Местоположение инструмента, вероятно, будетC:\boot\bootsect.exe
, но если его нет в вашей системе, вам нужно найти его где-нибудь еще ...) Теперь демонтируйте его и попробуйте загрузиться. Загрузка должна продолжиться правильно. (Хотя он не найдет Hal.dll, по крайней мере, вы знаете, что он работает.)Теперь сделайте то же самое, что и на последнем шаге, но используйте
/NT52
вместо/NT60
. Теперь вы увидите первую ошибку - указание на то, что загрузчику Windows XP не нравится диск .
Итак, мой вопрос: почему?