Что делать, если у себя на мониторе Вы видите надпись: не удается запустить windows из за испорченного или отсутствующего файла system. Прежде всего - не паниковать! :)
Если windows не загружается это - не страшно, надо лишь немного попрактиковаться в ее восстановлении. На фото выше сама windows предлагает нам воспользоваться установочным диском и консолью восстановления для исправления ситуации. Но вот что делать дальше - не "говорит". Мол, берег - там и выплывайте как хотите :)
Примечание: описанный ниже метод восстановления при испорченной загрузке для Windows XP и 2000 практически идентичен.
Если не удается запустить windows - будем учиться и начнем именно с консоли восстановления. Но перед этим, чтобы понять с чем мы, собственно, мы имеем дело, давайте рассмотрим что такое есть файл «system» и где он находится?
Обнаружить файл system можно по такому адресу: c:\windows\system32\config
Это - файл без расширения. Почему так? Просто потому, что это - не файл, как таковой, а - часть реестра windows.
Его еще называют системным реестром (system registry). Это - иерархически организованная и упорядоченная база данных, в которой хранятся практически все настройки программных продуктов от Microsoft. Здесь содержатся записи об аппаратной конфигурации компьютера, профилях и правах доступа пользователей, информация об установленном программном обеспечении и его настройках, политиках безопасности и т.д. Это - сеть нервных окончаний нашей ОС :)
Данная структура была придумана, как альтернатива, множественным конфигурационным ini файлам, в которых до этого записывались все настройки операционной системы.
Как можно попасть в реестр? Нажимаем на кнопку «Пуск» и из выпавшего мню выбираем пункт «выполнить». В открывшемся окне быстрого доступа к основным средствам управления ОС вводим команду «regedit» (для windows 2000 существуют две разные команды regedit и regdt32) и нажимаем кнопку «OK».
Вот как выглядит редактор этой базы настроек:
Внимание ! Изменение значений системного реестра без четкого представления что и зачем Вы делаете, может привести к полной неработоспособности операционной системы после следующей перезагрузки !
Вот, а теперь разберем что мы видим на фото выше? Структура состоит из пяти основных "кустов" или "ветвей" (иногда их называют "ульями" - hives). Перечислим их:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
- HKEY_CURRENT_CONFIG
Как видите на фото выше, каждая из "ветвей" визуально оформлена в виде папок и содержит произвольное количество вложенных подпапок. Нажав на «+» рядом с пиктограммой, мы может развернуть нужный нам "куст". На фото выше мы развернули HKEY_CURRENT_CONFIG, затем - «Software» и зашли в раздел «Fonts».
В правой части окна мы можем видеть конкретные значения (ключи) данной "ветви" реестра. Идентификаторы значений представлены тремя столбцами:
- Имя - название "ключа"
- Тип - строковый или двоичный параметр (тестовый или числовой)
- Значение - определяющий параметр "ключа" (то, что в нем содержится)
Как правило, «значение» представляет собой малопонятные "нормальному" человеку цифро-буквенные комбинации, необдуманное изменение которых может привести не только к испорченному файлу system, но и невозможности восстановления системы в принципе!
Теперь, давайте еще раз зайдем в редактор реестра и посмотрим, в каком виде представлен там наш файл system, который находится по адресу c:\windows\system32\config ?
Запускаем regedit. Помните, как это делается? :) Раскрываем "ветвь" HKEY_LOCAL_MACHINE и внутри нее видим структуру SYSTEM. Вот это, фактически, и есть тот самый файл system размером в 2 816 килобайт (почти три мегабайта), который мы рассматривали на втором скриншоте в начале данной статьи.
Для симуляции ошибки из названия статьи: не удается запустить windows из за испорченного файла system предлагаю взять и удалить что-нибудь отсюда :) Давайте начнем с тяжелого случая: удалим весть раздел SYSTEM (все что удастся оттуда убрать) и, загрузившись с установочного диска, попробуем с помощью консоли восстановления исправить ситуацию.
В данном разделе содержатся многочисленные настройки операционной системы: аппаратные профили компьютера, настройки служб и драйверов и другие важные настройки самой ОС.
После описанных выше манипуляций мы столкнемся со следующей неприятностью. При попытке залогиниться мы все время будем получать сообщения о неправильном пароле на вход:
Почему это происходит? Дело в том, что в разделе system содержится масса различных настроек самой операционной системы. Здесь же находится и информация о паролях на вход. Мы - удалили ее вместе со всем разделом и именно поэтому ОС не дает нам возможности авторизоваться и пишет, что пароль неправильный.
Справедливости ради стоит отметить, что с подобным глобальным "армагеддоном" раздела system Вы вряд ли столкнетесь :) Скорее это будет - локальное повреждение данного файла или нескольких его записей (ключей реестра).
Симулируем такое развитие событий: раскроем раздел «SYSTEM» и удалим из него подраздел «Select» (показан на фото выше). Перезагружаемся. Опять видим сообщение системы об отсутствующем или испорченном файле system
Загружаемся в консоль восстановления. На этот раз мы вполне успешно можем через нее войти в операционную систему.
Теперь, давайте с Вами поговорим о том, как же можно "отремонтировать" испорченный файл system ?
Возможно Вы знаете, а, может быть, и - нет, но дубликат этого файла находится по адресу: c:\windows\repair
Это - резервная копия части системного реестра system, которая автоматически создается после установки ОС и сохраняется в данной папке. Это - своеобразный чистый "слепок" XP сразу после ее установки. Как видите, размер файла меньше, чем рассмотренный нами в первой части статьи. Это проистекает из того факта, что вся работа идет через другой файл system, находящийся по адресу c:\windows\system32\config.
НО! В любой момент можно воспользоваться резервной копией из папки repair для восстановления поврежденного или испорченного файла system, просто скопировав его оттуда в основную системную директорию.
Давайте попробуем, что из этого получится? Загружаемся с диска, нажимаем клавишу «R», входим с консоли в нашу ОС и вводим вот такую команду:
Что мы сделали? Просто сказали откуда и что, а потом - что и куда копируем:
copy c:\windows\repair\system c:\windows\system32\config\system
Нас спрашивают, хотим ли мы заменить испорченный или отсутствующий файл system ? Соглашаемся, вводим с клавиатуры «y» (yes) и подтверждаем выбор нажатием клавиши «Enter». Консоль "говорит" нам, что скопирован 1 файл. Вводим с клавиатуры команду «exit» (выход) и перезагружаемся.
Возвращаем в биос запуск с жесткого диска и видим, что загрузка успешно восстановлена:
Единственно, после подобной полной замены испорченного файла system будьте готовы к тому, что после успешной загрузки Вам придется заново устанавливать все драйвера и восстанавливать настройки сетевой карты, самой ОС и рабочего стола. Ведь в каталоге repair как Вы помните, содержалась копия "куста" реестра на момент установки "чистой" windows.
Двигаемся дальше: далеко не всегда нужно восстанавливать работоспособность ОС именно заменой всего испорченного файла system. В большинстве случаев, речь идет всего об одной-двух сбойных записях данной части реестра, которые и вызывают подобную ошибку.
Есть один способ, который позволяет восстановить испорченный файл system и избежать последующей установки драйверов и восстановления всех настроек. Давайте сейчас сжато его опишем, а после - разберем каждый из пунктов более подробно:
- Снимаем жесткий диск с "ремонтируемой" системой
- Подключаем его к другому компьютеру с установленной Windows XP
- Запускаем редактор. В левом окне ставим курсор на HKEY_LOCAL_MACHINE, затем из меню «файл» выбираем пункт «загрузить куст»
- Находим на присоединенном диске по пути c:\Windows\System32\config файл «system»
- Загружаем его в рабочий реестр (под любым именем)
- "Куст" загружен и появляется сообщение об успешном исправлении одного/нескольких файлов
- В меню файл выбираем опцию «Выгрузить куст»
- Присоединяем снятый винчестер к первому компьютеру и загружаемся с него
Давайте разберем некоторые моменты "ремонта" испорченного файла system более подробно. Итак, снимаем наш жесткий диск и цепляем его к другому компьютеру:
Диск с "ремонтируемой" системой у нас на скриншоте выше имеет букву «Е» и подключен, как второй дополнительный винчестер. Загружены же мы сейчас в windows, которая установлена на диск «С». Выполняем команду «regedit» и попадаем в реестр. Ставим курсор на HKEY_LOCAL_MACHINE:
Нажимаем на меню «файл» и из выпавшего меню - «загрузить куст»:
Теперь через проводник заходим на наш присоединенный диск «Е» по адресу windows\system32\config и выбираем там наш испорченный файл system:
Нажимаем кнопку «Открыть». Появится окно, в котором нам предложат ввести имя подгружаемого раздела (можете ввести что угодно, эти ни на что не влияет).
Нажимаем «OK» и вот тут - важный момент! После этого действия система должна показать окно, в котором сообщит нам о решении проблемы испорченного файла system. Будет сказано об успешном восстановлении одной или нескольких записей.
После этого мы видим, как загруженный нами "куст" присоединился к одной из веток работающего реестра:
На скриншоте выше мы даже, для наглядности, развернули загруженную структуру. Вы можете видеть в ней уже знакомые нам, по первой части статьи, папки.
В принципе, нам больше делать ничего и не нужно. Наша windows сама решила проблему испорченного файла system при импортировании поврежденной структуры в рабочий реестр.
Нам остается только выгрузить наш "куст" обратно. Выделяем его мышкой и делаем следующее:
После этого - выключаем системный блок, отцепляем присоединенный жесткий диск и ставим его обратно в ремонтируемый компьютер. Включаем его и, скорее всего, мы обнаружим, что не зря проделывали все эти манипуляции :)
Напоследок хочу показать еще один автоматический способ восстановления испорченного "куста" реестра. Способ самый простой и поэтому многие им пренебрегают, а порой именно он является той "соломинкой", с помощью которой мы можем достаточно быстро восстановить работоспособность операционной системы.
Что я имею в виду? Конечно же, использование консольной команды chkdsk. На скриншоте ниже можно увидеть, как данная команда, запущенная с соответствующими "ключами", произвела замену поврежденных кластеров в файле system.
В итоговом отчете после полного выполнения команды (скриншот ниже) мы можем видеть, как умная программа не только "отремонтировала" наш файл system, но и отметила несколько кластеров, как сбойные, сделав пометку про них в служебной части диска. Надпись "8 килобайт в поврежденных секторах" говорит сама за себя достаточно красноречиво! Другое дело, что эти сбойные килобайты пришлись именно на критически важный для загрузки ОС файл (куст реестра), но тут уж, что называется, - планида! :)
Как видите, мы успешно решили проблему (причем разными способами) и теперь точно знаем что делать, если видим подобную надпись: не удается запустить Windows из за испорченного файла system.
В конце статьи - небольшое видео о системном реестре Windows: