Проблема загрузки Windows – Не входит в систему

Меняем значение ключа реестра

В моей практике часто встречается следующая проблема. Невозможно войти в систему, сразу же происходит logout (выход) и опять экран приветствия.

Как это представлено здесь:

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

Эмпирическим путем было выясненно, что данная проблема происходит при отсутствии на нужном месте файла userinit.exe (должен быть расположен в system32), либо глюком в реестре, когда путь к этому файлу указан неправильно.

Причиной проблем может послужить вирусная атака (один из способов автозагрузки зловреда – это поместить себя в секцию winlogon после userinit.exe, тогда произойдёт его запуск после входа в систему пользователем), случайное удаление, да мало ли разных непонятных вещей творится внутри системного блока… :)

Итак, план действий в том случае, если пользователь не может войти в систему.

  1. Загружаемся с LiveCD (наш SonyaPE LiveCD подойдёт для этого);
  2. Проверяем наличие файла userinit.exe в каталоге \Windows\System32\ (файл должен быть на месте);
  3. Проверяем состяние ключа реестра HKLM\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon\Userinit (должно равняться “C:\Windows\system32\userinit.exe,” для C: системного). Запятая в конце нужна!;
  4. Исправляем положение и перезагружаемся;

Пошаговый план устранения проблемы со входом в систему:

Первым делом, загружаем LiveCD и запускаем редактор реестра Windows (команда regedit);

Запускаем редактор реестра
Запускаем редактор реестра

Открываем раздел HKEY_LOCAL_MACHINE и монтируем туда реестр другой системы (хостовой), выбирая пункт меню “Файл – Загрузить куст”.

Загружаем куст реестра
Загружаем куст реестра

Открываем в файловой системе каталог Windows\System32\config\ и загружаем файл software – важно выбрать файловую систему не LiveCD, а хостовой машины, т.е. файл на диске C:\

Выбираем улей SOFTWARE
Выбираем улей SOFTWARE

 Даём кусту произвольное имя (1111111111111) в диалоговом окне и открываем там путь (Microsoft\WindowsNT\CurrentVersion\Winlogon), а там ключ Userinit, который равен “C:\Windows\userinit.exe,”. Видим, что пропущен каталог system32, дописываем его. Сохраняем. Выгружаем куст (аналогично, как и загрузили).

Меняем значение ключа реестра
Меняем значение ключа реестра

Было [3], стало [2] (см. скрин).

Перезагружаем систему! Всё должно заработать!


Like this post? Please share to your friends:

Comments:

Comments: 5
  1. PrihoD

    происходит такая хрень из-за того, что сама винда или туповатый антивирус не прибирают за собой. Заражен параметр в реестре? Возьму и сотру его – вот типа так и происходит то, что мы видели в первом видео. Т.е. происходит простая затирка реестра (раньше еще бы и файл удалили) без исправлений последствий. К счастью, с таким приходится сталкиваться все реже.

    1. litladmin (автор)

      Ты думаешь, дело в том, что какое-то средство защиты “возвращает” реестр к заведомо неработоспособному состоянию?

      1. PrihoD

        Да, видел собственными глазами как Avast удалил userinit.exe. Мне кажется тут была примерно такая же причина, только не с самим файлом, а с реестром

        1. litladmin (автор)

          Может аваст удалил вредоноса, маскирующегося под системный файл? Кстати, мысль возникла:

          1. Вирус копирует своё тело в Windows\userinit.exe
          2. Меняет ключ реестра Userinit на себя
          3. Антивирус убивает тело вируса, но не выравнивает ключ на Windows\system32\userinit.exe

          Такая модель вполне имеет место быть!

          1. PrihoD

            Скорее всего да

Leave a Reply