Восстановление запуска Windows XP при повреждении загрузчика

Содержание:

Процесс загрузки операционной системы Windows XP

восстановление загрузчика windows xpЗагрузка Windows XP — это сложный и многоэтапный процесс, начинающийся с момента включения компьютера и заканчивающаяся уже после появления на экране рабочего стола. За эти несколько минут выполняется множество скрытых от глаз пользователя операций, каждая из которых длится от долей секунды до нескольких секунд. Сам процесс старта системы можно сравнить с эстафетой, где каждый из участников проходит свою часть пути и решает свои, строго определенные задачи, после чего передает «эстафетную палочку» дальше. Если хотя бы один компонент-участник выпадает из этой цепочки, процесс загрузки останавливается, и на экране, как правило, отображается сообщение об ошибке.

Чтобы иметь представление о том, как проходит загрузка Windows XP, кратко разберем ее последовательность. Досистемные этапы включения компьютера (самотестирование, инициализацию и начало выполнения кода BIOS и т. д.) рассматривать не будем, а за начало старта системы условно примем момент считывания программой BIOS первого сектора жесткого диска, где находится главная загрузочная запись — MBR, содержащая загрузочный код и таблицу разделов (логических дисков). Итак:

  • BIOS считывает код MBR (Master Boot Code) и передает ему управление.
  • Загрузочный код MBR проверяет таблицу разделов и находит раздел, помеченный как активный, считывает его первый (загрузочный) сектор (Boot Sector) и передает управление записанному туда коду.
  • Код загрузочного сектора передает управление загрузчику Windows NT — файлу NTLDR (NT Loader), который находится в корневом каталоге диска, куда установлена операционная система.
  • Загрузчик Windows переводит процессор в 32-разрядный безопасный режим работы, проверяет наличие файла hiberfil.sys (образ спящего режима) и если находит, загружает его. Если такого образа нет, NTLDR считывает файл конфигурации загрузки Boot.INI. Если в этом файле перечислено более одной операционной системы, на экран выводится меню, чтобы пользователь самостоятельно выбрал, какую систему загружать.

восстановление загрузчика windows xp

  • При нажатии пользователем клавиши F8 перед стартом системы, NTLDR открывает меню дополнительных вариантов загрузки:

восстановление системы win xp

  • Далее загружается программа ntdetect.com для определения конфигурации аппаратных устройств компьютера.
  • Вслед за этим загружается ядро Windows XP (файл ntoskrnl.exe) и библиотека Hal.dll (Hardware Abstraction Layer), задача которой — скрыть различия в оборудовании компьютера от кода ядра.
  • После этого загрузчик NTLDR загружает драйвера, помеченные как загрузочные, и передает управление ядру (ntoskrnl.exe).
  • HAL инициализирует оборудование и подготавливает контроллер прерываний.
  • Далее включается в работу система ввода-вывода и загружаются остальные драйвера, которым назначен тип запуска «авто».
  • Ядро загружает подсистему управления сеансами Windows — файл Smss.exe, который создает пользовательское окружение и продолжает загрузку — запускает графическую подсистему (драйвер win32k.sys), клиентсерверную подсистему (Csrss.exe) и программу входа пользователя (Winlogon.exe и Lsass.exe).
  • После логина пользователя запускается Userinit.exe, запускающий оболочку системы (проводник Explorer.exe) и сетевые подключения. На экране, тем временем, появляется рабочий стол.

Почему Windows XP не загружается?

Причиной, по которой Windows XP не загружается, может быть любой сбой в «эстафете» процесса загрузки, например, отсутствие или повреждение одного или нескольких компонентов. Это может быть загрузочный код в первом разделе жесткого диска или активного раздела, сам загрузчик NTLDR, файлы, ответственные за запуск Windows, а также системный реестр, где содержится информация о том, что и в какой последовательности запускать.

К нарушению загрузки чаще всего приводит:

  • неквалифицированная установка нескольких операционных систем на жесткий диск, когда вместо создания конфигурации с двойной загрузкой, загрузочный код позже установленной системы затирает код ранее установленной;
  • вирусное заражение, преимущественно — блокираторы-вымогатели, которые могут модифицировать параметры запуска важных для загрузки файлов в системном реестре, сами файлы и загрузочные сектора на диске.
  • дефекты поверхности жесткого диска, приводящие к повреждениям и потере данных на нем;
  • перебои в электропитании компьютера во время операций чтения записи файлов, ответственных за загрузку (если во время запуска или завершения работы Windows произошло неожиданное выключение, вероятность того, что система больше не загрузится, довольно существенна).

Восстановление загрузки Windows XP

Чтобы выяснить, почему система не загружается, важно определить, на каком этапе ее загрузки происходит сбой. Проблемы на самых ранних этапах старта по внешним признакам будут отличаться от проблем с загрузочными файлами, ответственными за вход в систему. Разберемся, как диагностировать типичные сбои загрузки Windows и как с ними бороться.

Повреждение MBR (главной загрузочной записи)

Проявляется тем, что загрузка компьютера прерывается сразу же после старта — после вывода на монитор сведений о производителе компьютера экран остается черным. Иногда выводится сообщение об ошибке, например:

  • Invalid Partition Table — повреждение таблицы разделов;
  • Missing Operating System — не найдена операционная система;
  • Error Loading Operating System — ошибка загрузки операционной системы.

Решение

  • Загрузите с установочного диска с дистрибутивом Windows XP консоль восстановления (Recovery Console): поместите в привод установочный диск, сконфигурируйте BIOS для загрузки с CDDVD и запустите программу установки.
  • После появления на экране текста «Вас приветствует программа установки», нажмите клавишу «R» (восстановление).

восстановление загрузчика win xp

  • Запустится консоль восстановления. На экране будет отображен список установленных на компьютере копий Windows XP и вам будет предложено указать, в какую из них выполнить вход.

загрузчик win xp

  • Далее введите пароль администратора (если есть). Если его нет, просто нажмите Enter, а следом — команду перезаписи загрузочного кода MBR: fixmbr, нажмите Enter и Exit для выхода из консоли и перезагрузки компьютера.

восстановление загрузки win xp

Эта команда восстанавливает только загрузчик MBR (boot code), а таблицу разделов, к сожалению, нет. Восстановление таблицы разделов требует использования сторонних утилит, например, TestDisk одного из бесплатных и доступных для понимания инструментов.

восстановление загрузчика windows xp

На официальном сайте есть подробная инструкция по использованию программы.

Повреждение загрузочного сектора

По симптомам похоже на повреждение MBR, но при этом система может выдавать следующие ошибки:

  • А disk read error occurred — ошибки чтения диска;
  • NTLDR is compressed — загрузчик NTLDR заархивирован (сжат);
  • NTLDR is missing — загрузчик не найден.

восстановление системы win xp

Решение

  • Загрузите консоль восстановления и выполните вход в нужную вам копию Windows XP;
  • Введите команду: fixboot — загрузчик (код) активного раздела будет перезаписан. Далее — Enter и Exit.

восстановление загрузчика win xp

Важно! Если в корневом каталоге вашей системы отсутствует файл NTLDR — загрузчик Windows, его придется скопировать с установочного диска или другой копии Windows XP и поместить на диск C: (если система находится на нем).

С появлением Windows Vista была создана утилита Bootsect.exe, предназначенная для перезаписи загрузочного кода разделов диска. Ее также можно использовать для восстановления загрузки Windows XP.

Утилитой Bootsect.exe можно воспользоваться, если у вас на жестком диске стоит еще одна операционная система Windows или загрузившись с Windows LiveCD («живого» диска с операционной системой, которая работает при загрузке с DVD или флешки).

Восстановление загрузки системы с помощью Bootsect.exe выполняется следующим образом:

  • скопируйте файл Bootsect.exe (можно взять с дистрибутива Windows Vista и выше) в корневую директорию системы, загрузку которой вам требуется восстановить.
  • запустите командную строку и выполните команду: Путь_к_bootsect.exe /NT52, например: D:bootsect.exe /NT52.

Ошибки конфигурации загрузки в файле Boot.INI

Если конфигурационный файл загрузки Windows XP содержит ошибки или отсутствует, загрузчик NTLDR не сможет найти систему. О проблемах с Boot.INI свидетельствуют следующие сообщения:

  • Check boot path and disk hardware — предложение проверить путь к загрузочному диску и сам диск;
  • Could not read from selected boot disk — прочитать данные с загрузочного диска не удалось;
  • Windows could not start because of a computer disk hardware configuration problem — из-за проблем с конфигурацией диска загрузить Windows не удалось.

Решение

  • Запустите консоль восстановления.
  • После входа в систему выполните команду: bootcfg /rebuild — каждый раздел диска будет просканирован на наличие установленной в нем копии Windows XP. При обнаружении первой же системы, пользователю будет предложено добавить информацию о ее загрузки в конфигурационный файл:

загрузчик win xp

Восстановление конфигурации загрузки будет выполнено.

Повреждение системных файлов

В загрузке Windows принимает участие множество файлов — помимо тех, которые мы назвали, еще несколько десятков. Отсутствие или повреждение любого из них может привести к тому, что система не сможет стартовать, а вместо этого будет циклически перезагружаться или «радовать» пользователя синими экранами смерти (BSoD). Скриншот одной из типичных ошибок, связанных с системными файлами при загрузке, приведен ниже:

восстановление загрузки win xp

Запись «STOP C000021a {fatal system error}» — говорит о неустранимой ошибке системы, связанная с проблемами в входе выполнения Winlogon.exe или Csrss.exe. Это, вероятнее всего, говорит о том,что файлы повреждены или отсутствуют.

Решение

Для выполнить восстановление загрузки, необходимо найти аналогичные файлы и вернуть их на «законные места» — в каталог WindowsSystem32. Их копии находятся в хранилище Windows — папке WindowsSystem32DllCach или на установочном диске в папке i386. На дистрибутивном диске файлы хранятся в сжатом виде, и перед заменой их необходимо распаковывать. Это можно сделать также при помощи Recovery Console:

  • Скопируйте на флешку с установочного диска папку i386, подключите ее к компьютеру.
  • Выполните вход в систему, загрузчик которой требуется восстановить.
  • Введите команду: expand d:i386winlogon.ex_ c:windowssystem32 — с ее помощью архивный файл winlogon.ex_ на установочном диске будет распакован в папку system32 под именем winlogon.exe. Аналогичным образом можно провести восстановление и других файлов. D: — в данном случае — буква флешки.

восстановление загрузчика windows xp

Повреждение куста реестра SYSTEM

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

Файлы реестра уникальны для каждой системы, поэтому их восстановление при помощи переноса с другой копии Windows невозможно — необходим свой собственный раздел. Копия реестра, созданного на момент установки системы, хранится в каталоге WindowsRepair

Решение

Восстановление поврежденного раздела также несложно выполнить через консоль.

  • Выполните вход в Windows.
  • Введите команду: rename c:windowssystem32configsystem system.old и нажмите Enter. Поврежденный куст реестра будет переименован, теперь на его место можно копировать новый.
  • Выполните вторую команду: copy c:windowsrepairsystem c:windowssystem32configsystem — будет произведено восстановление раздела. После этого вы сможете загрузить систему.

восстановление системы win xp