Время от времени ко мне обращаются пользователи с глючной Windows 7 или 8 (вероятно найдутся жертвы и Windows 7 или 8), у которых вместо обычной загрузки постоянно запускается «Восстановление системы», причем автоматический механизм с поиском и устранением проблем не справляюсь.
Мне удалось разобраться, почему появляется сообщение «Было предпринято несколько попыток, но причину проблемы определить не удалось» и как вернуть операционную систему к жизни без радикальной переустановки.
Симптомы проблемы: с диском все в порядке, файловая система в порядке, файлы на разделах с загрузочной флешки или диска можно просмотреть, внешне все на месте, система восстановления завершает все тесты с кодом 0х0 (нет ошибки), но Windows упорно не запускается, предлагая восстановление, но не может объяснить пользователю почему.
Единственная подсказка заключается в том, что в описании проблемы, данном утилитой восстановления, есть строка типа
Сигнатура проблемы 07: CorruptFileНа этом этапе уже можно догадаться, что операционная система не запускается из-за отсутствия или повреждения одного из файлов, необходимых на этапе запуска ядра.
Однако нигде не упоминается, о каком именно файле идет речь.
Узнать это можно только «сломав» операционную систему: нужно подменить процесс загрузки, чтобы система восстановления просто не запускалась.
Ниже представлены готовые пошаговые инструкции.
1. В инструменте восстановления нажмите «Показать дополнительные параметры восстановления системы» и выберите запуск командной строки для ручного вмешательства.
У нас спросят логин и пароль пользователя Windows, под которым мы сможем войти в упавшую Windows, хотя нам это не важно.
2. В консоли последовательно выполните две команды:
bootrec /RebuildBcd
bcdboot d:\windows
На всякий случай сначала убедитесь (по каталогу d:\windows), что буква диска в этой среде восстановления действительно «d».
Теперь мы прибили систему восстановления.
Возможно даже, что кое-где на начальном этапе у нас теперь будут надписи не на русском (или каком бы он ни был языке, если Windows локализована), а на английском.
Если это нежелательно, то добавьте в конец второй команды опцию «/l ru-RU»: bcdboot d:\windows /l ru-RU
Ну, или какой бы язык вы ни использовали.
Дальше.
Не стесняйтесь перезагрузиться и (если будет предложено) выберите обычную загрузку Windows. Очень скоро загрузка прервется, показав кучу белых букв на черном экране, что-то вроде этого:
Разумеется, строка с «Файл:» — единственное, ради чего все это затевалось.
Внимательно запоминаем название указанного файла (или фотографируем на мобильный телефон, записываем на листочек и т.п.
) и достаем нашу козырную загрузочную флешку с установщиком Windows (или вставляем аналогичный DVD ), нажмите «Сброс» (если доступно) и загрузитесь в установщик.
Главное, чтобы у нас была одинаковая редакция (7, 8,.
), язык системы и разрядность (х86/х64) систем на диске и на установочном носителе.
Теперь нам нужно вернуть всё так, как было до нашего приезда.
Выбираем, дойдя до изображения справа, восстановление системы.
Нас спрашивают, какую систему мы собираемся восстанавливать:
Если что-то не так, нам сообщат, что установочный диск не подходит для установленной системы.
Следует убедиться в правильности выбранной разрядности (посмотреть на диске наличие папки «Program files (x86)» — если есть, то это 64-битная ось, если нет, то 32 -бит, хотя надежнее поискать SysWOW64 в папке самой оси), попробуйте скачать установщик на другом языке, а может и взять другую редакцию.
Пришло время расслабиться и понаблюдать за процессом.
По окончании этого процесса мы вернемся к тому, с чего начали — постоянно работающей системе восстановления, которая не знает, в чем проблема.
Если бы мы могли сразу увидеть имя файла, создавшего проблему, ничего из вышеперечисленного не потребовалось бы! Как бы то ни было, теперь нам остаётся только исправить саму проблему, к которой мы так долго шли.
Еще раз нажмите «Показать дополнительные параметры восстановления системы» и выберите «Запустить командную строку».
Нам это нужно только для запуска regedit.exe
В редакторе реестра выберите ветку HKEY_LOCAL_MACHINE и в меню выберите загрузить куст реестра из файла:
В открывшемся диалоге дайте редактору СИСТЕМНЫЙ файл из папки d:\windows\system32\config (это кусок реестра восстанавливаемой оси).
У нас спрашивают имя — мы даем абсолютно любое имя, например «1».
Куст подключен и мы можем его выбрать в окне редактора.
Теперь нам просто нужно найти и удалить информацию о файле, имя которого мы увидели белым и черным.
Нажмите Ctrl+F (можно даже просто F3) и введите в строку поиска это же имя (путь вводить не обязательно).
Когда редактор найдет запись, удалите всю ветку (в левой части окна редактора, где находится дерево реестра) с этой записью и повторите поиск (F3).
Когда мы получим сообщение «Поиск в реестре завершен», можно заканчивать: накручиваем дерево обратно на заданное нам имя куста («1» например) и выгружаем куст через меню редактора.
Все, ремонт завершен, перезагружаемся и проверяем работу операционной системы! P.S.: Как видно из названия файла, который мы с таким трудом извлекли из системы, проблему обычно создают различного рода трояны, любезно установленные пользователями, работающими под административной учетной записью системы, и проблемы не возникает при установке трояна (или даже просто вредоносной программы) ), а потом при принудительном вырезании зверя антивирусом.
Оставшаяся запись в реестре файла трояна как «крайне необходимая для запуска» приводит Windows к зацикливанию с попыткой восстановления.
Поэтому, чтобы не вставать дважды, желательно сначала просканировать файлы антивирусом, удалить с диска мусорные трояны, а затем приступить к описанным процедурам - на случай, если в системе зарегистрировано более одного такого зверька.
.
Теги: #Windows #Системное администрирование #Антивирусная защита #Восстановление загрузчика Windows 7 #бесконечная перезагрузка
-
Водопад И Agile: И Все Же, Откуда Эффект?
19 Oct, 24