четверг, 4 августа 2011 г.

Не грузится Windows. Только мигает курсор в левом верхнем углу

  Из практики.

  Вызов к клиенту -  не грузится комп. Прихожу на место. Не загружается Windows. BIOS проходит хорошо потом сразу начинает мигать текстовый курсор в левом верхнем углу экрана. Никаких заставок операционной системы не появляется.
  BIOS отработал хорошо и ошибок не показал. Возникло первое подозрение что комп не видит винта или видит не так как надо. Зайдя в настройку BIOS-а увидел что винчестер и его параметры распознаны правильно. Этот вариант отпал.
  Следующее подозрение что слетела файловая система винчестера.

  Я решил запустить стандартное средство "Консоль восстановления"и посмотреть что с данными на винте. Далее C: это системный жесткий диск, а D: содержит стандартный CD диск Windows XP.

1. Загрузился со стандартного CD диска с Windows XP
2. Когда диск первый раз задал вопрос "Установить Windows" или "Войти в консоль восстановления" нажал R чтобы войти в консоль
3. Далее был вопрос какую операционную систему использовать. Тут на компе одна система поэтому просто нажал 1
4. Был задан вопрос о пароле администратора. Просто ввел пароль который на нашем предприятии установлен на эту учетную запись. И вот она - консоль восстановления. Тут стало понятно что с файловой системой компа серьезных проблем нет поскольку если задается предыдущие 2 вопроса, то данные с винчестера читаются. Команда dir подтвердила это. Корень диска был показан правильно. Файловая система была в целом исправна.

  Память подсказала мне что при загрузке системы BIOS сначала запускает загрузчик из MBR-секторы винчестера, тот передает управление загрузочному сектору на системном логическом диске и уже тот запускает файлы ntldr и ntdetect.com (кажется именно в таком порядке), которые и ответственны за начало запуска Windows. Где-то в этой цепочке закрался сбой. Первое желание - восстановить эту цепочку.

  Далее учтите что команды в консоли восстановления могут отличаться от одноименных команд из командной строки Windows.
1. На всякий случай проверил системный диск на ошибки
chkdsk c: /P
Параметр /P говорит что ошибки надо исправлять. (А не /F как в chkdsk из командной строки Windows)
2. Cкопировал 2 файла с CD диска на системный диск. При вопросах о перезаписи согласился
d:
cd i386
copy ntldr c:\
copy ntdetect.com c:\
attrib +s +h +r c:\ntldr
attrib +s +h +r c:\ntdetect.com
3. Восстановил загрузчики
fixmbr
fixboot
4. Выход из консоли восстановления. Набрал команду и попробовал загрузить комп.

  Получилось.
  Этот сбой периодически появляется на разных компах с нашим лицензионным антивирусом и со всеми установленными обновлениями.
  Заразы на компах я не нашел, анализ логов исправленных систем ничего не дал. Дальнейшие эксперименты на других компах с этим симптомом показали, что загрузчики, которые я восстанавливал в 3-м пункте тут ни при чем. Проблема именно в этих 2-х файлах, которые мы копировали в 2-м пункте.

  Мои соратники по работе позже стали копировать их запустившись с загрузочного диска InfraCD.