Не удается запустить windows из за ntoskrnl
Что делать, если при загрузке Вы видите сообщение: Не удается запустить Windows из-за испорченного или отсутствующего файла: windows root\system32\ntoskrnl.exe ?
Сегодня мы попытаемся ответить на этот вопрос. Прежде всего, что такое есть файл ntoskrnl.exe? Его название можно разложить на несколько составляющих: NT OS kernel — «ядро операционной системы NT»). В данном случае — файл ядра операционных систем семейства Windows NT. Данный файл запускается загрузчиком ядра (NTLDR) в безопасном режиме. Также он интересен тем, что содержит в себе картинку, которую мы видим при загрузке Windows (boot screen).
Примечание: Компания Microsoft расшифровывает аббревиатуру NT как «New Technology» (новая технология). По ней выпускаются все ОС, начиная с Windows 2000.
Файл ntoskrnl.exe располагается сразу в нескольких местах ОС (стандартная практика Microsoft). В более поздних версиях операционных систем такой подход позволяет достаточно эффективно производить автоматическое восстановление загрузки системы при ее повреждении. Но — все по порядку!
Давайте проведем поиск по каталогу Windows:
Видим, что файл ядра операционной системы находится в двух разных директориях.
В семействе ОС Windows различают четыре версии файлов ядра:
- ntoskrnl.exe — однопроцессорное ядро
- ntkrnlmp.exe (NT Kernel Multi-Processor version) — ядро ОС NT с поддержкой нескольких процессоров
- ntkrnlpa.exe — однопроцессорное ядро с более чем тремя гигабайтами оперативной памяти (режим PAE — Physical Address Extension)
- ntkrpamp.exe — многопроцессорное ядро с более чем тремя гигабайтами оперативной памяти
В обычной Windows XP для однопроцессорных систем можно зайти по адресу: c:\\windows\system32 и убедиться в этом самому.
На одном из этапов загрузки ОС, ее загрузчик (в данном случае — NTLDR) вызывает и передает управление системному процессу ядра Ntoskrnl. Процесс Ntoskrnl.exe инициализирует подсистему загрузки и запуск системных драйверов для устройств, а также подготавливает операционную систему для работы с прикладными программами и приложениями.
Частью кода, который также выполняется в режиме ядра, является уровень аппаратных абстракций (HAL — Hardware Abstraction Layer),
Код ядра ОС работает в наиболее привилегированном режиме работы процессора. Этот режим работы часто называют «нулевым кольцом защиты» (Ring 0). В x86-х процессорах подобный уровень привилегий предоставляет неограниченный доступ ко всем возможностям процессора, позволяет напрямую обращаться к периферии и аппаратным ресурсам всего компьютера.
Различные вирусы (сетевые черви и руткиты) стремятся получить доступ к ядру, чтобы «дотянуться» до системных функций, работающих с памятью, файлами, сетевыми соединениями и процессами на самом низком уровне. При их перехвате, можно надежно замаскировать свое присутствие в системе или — выполнить любое другое действие.
Сам факт вмешательства в ядро легко обнаруживается сравнением образа ntoskrnl.exe, постоянно находящимся в оперативной памяти, с файлом, расположенным на жестком диске компьютера по адресу c:\\windows\system32\ntoskrnl.exe
Есть простой способ убедиться в этом: удалите файл ntoskrnl.exe (его копию — можете тоже) и увидите, как через секунд 10-20 он автоматически появится на том же самом месте! Он скопируется на винчестер прямо из оперативной памяти.
У Вас может возникнуть вопрос: зачем файл ntoskrnl.exe вообще держать на диске, если его копия постоянно находится в ОЗУ компьютера? А затем, что эта копия как-то должна сначала записаться в память при старте системы. Оперативная память — энергозависимая (после каждого выключения ее содержимое обнуляется), вот и получается, что файл на диске нужен именно для того, чтобы считать с него информацию в память. А его образ в памяти гарантирует то, что файл на диске не будет удален, или модифицирован злоумышленником во время работы системы. Вот такая вот получается «круговая порука» 🙂
Давайте убедимся в том, что файл ntoskrnl.exe действительно постоянно присутствует в памяти в виде отдельного процесса. Это хорошо видно на примере Windows 7.
Запустим диспетчер задач и слева внизу отметим галочкой пункт «Отображать процессы всех пользователей». После этого в колонке «Имя образа» (процесса) мы увидим запись «System» и в поле его описания — «NT Kernel & System»:
Пойдем дальше! Нажмем на меню «Вид» и в раскрывшемся списке отметим пункт «Выбрать столбцы». Появится окно, в котором мы можем указать дополнительные поля с данными, которые могут отображаться в диспетчере задач Windows.
Отмечаем галочкой пункт «Путь к образу» (процессу). Возвращаемся в диспетчер и видим, что в нем появился дополнительный столбец «Пут к образу», из которого четко видно, что процессом «System» является файл ntoskrnl.exe, находящийся по адресу c:\\windows\system32
Причем, если мы попробуем принудительно завершить этот процесс, то у нас это не получится.
Несмотря на все перечисленное выше, на практике (достаточно нередко) встречаются случаи когда мы видим при загрузке надпись: Не удается запустить Windows из-за испорченного или отсутствующего файла : windows root\system32\ntoskrnl.exe
Основываясь на своем личном опыте, могу сказать следующее: данная ошибка часто возникает при проблемах с жестким диском компьютера. Либо после того, как диск переподлючали или — добавляли в систему новый. Короче говоря, — проводились какие-либо манипуляции с физическими носителями.
Перечислим наиболее распространенные причины неисправности:
- ошибки файловой системы винчестера (проверять командой chkdsk)
- некорректное завершение работы (внезапное отключение электроэнергии)
- возникновение сбойных секторов на диске
После того, как мы убедимся что с дисковой подсистемой все в порядке, можно приступать к восстановлению файла ntoskrnl.
Для этого нам понадобится обычный установочный диск с Windows XP (2000) и немного удачи! 🙂 Итак, выставляем в bios с него загрузку и перезагружаемся. Если все сделали правильно, увидим, что запустился мастер установки Windows:
Нам нужно дождаться когда появится следующее окно с предложением выбора опции восстановления системы:
Нажимаем клавишу «R» и попадаем в консоль восстановления (о том, что это такое мы говорили в предыдущих статьях). Здесь нас спросят: в какую копию операционной системы мы хотим выполнить вход? Если ОС у нас на компьютере одна, то нажимаем клавишу «1» и — ввод (Enter).
После этого, появится текстовое приглашение ввести пароль администратора установленной системы. Вводим пароль и снова нажимаем Enter (если пароля не было — сразу ввод). После этого, появится приглашение для ввода консольных команд: C:\\WINDOWS> , которое свидетельствует о том, что мы успешно вошли в консоль и можем приступить к восстановлению файла ntoskrnl.exe.
После этого нам нужно написать всего одну команду:
expand d:\i386\ntoskrnl.ex_ c:\windows\system32
Буквой «d» у нас здесь обозначен привод оптических дисков. Если у Вас по другому, — просто подставьте в строчку свою букву диска. Что есть команда «expand» и какую роль выполняет, мы с Вами разбирали в этой статье. Если коротко, то суть ее сводится к следующему: распаковать файл ntoskrnl.exe с оптического диска и записать в системную папку Windows.
После набора команды, нажимаем клавишу «Enter» и если все сделали правильно, нас спросят хотим ли мы перезаписать уже существующий на винчестере файл ntoskrnl.exe новым (с оптического диска)? Соглашаемся на замену (вводим с клавиатуры «y») и нажимаем ввод (Enter). Видим сообщение о том, что 1 файл успешно скопирован (распакован).
Теперь можно выходить из консоли: вводим команду «exit» (выход) и компьютер уйдет на перезагрузку. Не забываем в bios-е обратно выставить загрузку с жесткого диска и после еще одного ребута видим, что загрузка Windows успешно восстановлена!
В Windows 7 восстановить файл ntoskrnl.exe проще. Точнее, там лично нам вообще ничего делать не придется! 🙂 В новых версиях Windows присутствует система автоматического восстановления загрузки и работоспособности ОС.
Давайте, для начала, посмотрим на файлы наших ядер в системной директории:
Как видите, у нас их здесь — два. Поскольку у меня на компьютере больше трех гигабайт оперативной памяти, то, в моем случае, Windows использует файл ядра ntkrnlpa.exe.
Давайте сымитируем проблему с этим файлом. Каким образом? А просто возьмем удалим его, перезагрузимся и посмотрим что будет? 🙂 После перезагрузки Windows автоматически запустит среду восстановления WRE (Windows Recovery Environment) и попытается сама устранить проблему:
Знаете, замечательно, конечно, что WRE пытается делать за нас «грязную работу», но проблема состоит в том, что она абсолютно не показывает, что именно делается для восстановления работоспособности системы? Мол, вот исправили — радуйтесь!
Лично меня, как сам себе админа, и просто человека, который хочет понять, как это работает, такой подход мало устраивает. Конечно, пройдя все те этапы, которые описаны в начале данной статьи, мы понимаем, что система просто копирует файл ntoskrnl.exe откуда-то из своих «закромов» на его прежнее место, но согласитесь, что с подобными нововведениями бразды правления несколько выскальзывают из наших трудовых администраторских рук 🙂
Посокрушались и будет! После, без сомнения, героического восстановления файла ядра, Windows просит нас перезагрузить компьютер для применения исправлений.
Если успеть нажать ссылку «Отобразить диагностику и описание исправления» до того, как закончится отсчет времени, то нам, так уж и быть, покажут что приблизительно делала Windows Recovery Environment. Прокрутим ползунок справа в самый низ и там найдем вот такую надпись:
Что за файл? Какую функцию выполняет? — ни слова! Уже чувствуете незримое присутствие «Большого Брата»? 🙂 Как бы там ни было, после перезагрузки мы увидим, что все в порядке и Windows восстановлена, а это — главное!
Надеюсь, что статья была для Вас полезной? Если так, то оставьте свой комментарий или воспользуйтесь кнопками внизу.
Как восстановить windows root system32 ntoskrnl exe
Сообщения: 4
Благодарности: 0
toy908, Тебе понадобится вытащить файл ntoskrnl.exe из своего дистрибутива и поместить его в C:\WINDOWS\system32\. |
ntoskrnl.exe — найдёшь на диске с Windows в папке I386
в одном из файлов: SP3.CAB или NTOSKRNL.EX_ от туда и бери ntoskrnl.exe.
Для работы воспользуйся LiveCD.
Примечание: Через LiveCD, буква системного диска на котором установлена система может отличаться.
Хотел переустановить винду,но при загрузке ничего не происходит только эта надпись. » |
А приоритет загрузки с CD стоит? Зайди в BIOS и выстави приоритет на CD.
А приоритет загрузки с CD стоит? Зайди в BIOS и выстави приоритет на CD. Все стоит правильно,даже в BIOS HD отключал-не помогает.Есть несколько установочных дисков,на них есть спасательные ОС,но они начинают грузиться из меню,а меню не грузится просто высвечивается выше указаная надпись. » |
——-
Самое совершенное оружие, которым забиты арсеналы богатых и процветающих наций, может легко уничтожить необразованного, больного, бедного и голодного. Но оно не может уничтожить невежество, болезнь, нищету и голод. (Фидель Кастро)
Почему всех осужденных за измену Родине при Сталине реабилитировали при Горбачёве по отсутствию состава преступления? Потому что при Горбачёве измену Родине перестали считать преступлением.
Как восстановить windows root system32 ntoskrnl exe
Сообщения: 4
Благодарности: 0
toy908, Тебе понадобится вытащить файл ntoskrnl.exe из своего дистрибутива и поместить его в C:\WINDOWS\system32\. |
ntoskrnl.exe — найдёшь на диске с Windows в папке I386
в одном из файлов: SP3.CAB или NTOSKRNL.EX_ от туда и бери ntoskrnl.exe.
Для работы воспользуйся LiveCD.
Примечание: Через LiveCD, буква системного диска на котором установлена система может отличаться.
Хотел переустановить винду,но при загрузке ничего не происходит только эта надпись. » |
А приоритет загрузки с CD стоит? Зайди в BIOS и выстави приоритет на CD.
А приоритет загрузки с CD стоит? Зайди в BIOS и выстави приоритет на CD. Все стоит правильно,даже в BIOS HD отключал-не помогает.Есть несколько установочных дисков,на них есть спасательные ОС,но они начинают грузиться из меню,а меню не грузится просто высвечивается выше указаная надпись. » |
——-
Самое совершенное оружие, которым забиты арсеналы богатых и процветающих наций, может легко уничтожить необразованного, больного, бедного и голодного. Но оно не может уничтожить невежество, болезнь, нищету и голод. (Фидель Кастро)
Почему всех осужденных за измену Родине при Сталине реабилитировали при Горбачёве по отсутствию состава преступления? Потому что при Горбачёве измену Родине перестали считать преступлением.