Что делать со сбоем драйвера устройства

Опубликовано: 24 Марта, 2023


Глючная сетевая карта


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


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


С тех пор я сталкивался с несколькими другими ситуациями, когда Windows неправильно определяла аппаратный компонент. По-видимому, Windows нередко допускает ошибки при настройке нового оборудования. В случае с системой моего друга проблема была не то чтобы безобидной (сервер был недоступен для пользователей пару часов), но и не катастрофической. Проблема могла быть намного хуже.


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


Как вы справляетесь с этим?


Страшно то, что большинство администраторов испытывают огромное давление, чтобы поддерживать свои серверы в актуальном состоянии с помощью последних исправлений и драйверов. При таком частом обновлении само собой разумеется, что рано или поздно администратор загрузит неисправный, поврежденный или просто неправильный драйвер устройства в какой-то момент времени, и это довольно хорошо. В таком случае давайте представим на мгновение, что вы устанавливаете обновленный драйвер устройства на один из ваших серверов, и сервер выдает печально известный синий экран смерти. Что вы делаете по этому поводу?


Надлежащий план действий зависит только от того, какая операционная система работает на вашем сервере. Если вы используете Windows NT 4.0, то все, что я могу сказать, это «удачи». Единственными реальными инструментами, которые Microsoft предоставляет вам для решения подобных ситуаций в Windows NT 4.0, являются параметр «Последняя удачная конфигурация» и параметр «Режим VGA».


Параметр «Последняя удачная конфигурация» по-прежнему существует в Windows Server 2003. Идея состоит в том, что после успешной загрузки операционной системы Windows делает снимок конфигурации системы (включая информацию о драйвере устройства).


Опция «Последняя удачная конфигурация» была хорошей идеей, но она почти никогда не работает. Я могу вспомнить только один случай за последние десять лет, когда опция «Последняя известная удачная конфигурация» сработала для меня в реальной жизненной ситуации. Есть несколько причин, почему этот вариант не работает так хорошо.


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


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


Конечно, у Microsoft есть решение и для этой маленькой дилеммы. Другой вариант восстановления, доступный в Windows NT 4.0 и доступный по сей день, — это режим VGA. Идея режима VGA заключается в том, что проблемы с видео представляют собой своего рода уловку-22. Проблемы с видео не позволяют вам полностью войти в систему, но вы не можете решить проблему, потому что вы не можете полностью войти в систему. Режим VGA решает эту проблему, заставляя видеокарту оставаться в разрешении VGA.. Так как все современные видеокарты поддерживают VGA, Windows может загрузиться, и вы можете исправить глючный драйвер.


В Windows NT 4.0 мне удавалось обойти синий экран смерти, связанный с драйвером, с использованием последней удачной конфигурации или режима VGA примерно в половине случаев. В других случаях мне приходилось использовать продукт под названием ERD Commander от Winternals (http://www.winternals.com/Products/ERDCommander/). ERD Commander можно использовать для множества разных задач, но в такой ситуации вы можете использовать его для перенастройки или отключения драйвера устройства из-за пределов операционной системы. Windows даже не должна работать, потому что ERD Commander загружается из собственной автономной мини-операционной системы. Если вам интересно, эта утилита также полезна для восстановления более новых операционных систем.


Вероятно, я мог бы написать целую статью о методах восстановления драйверов, связанных с Windows NT, потому что было очень трудно обойти некоторые проблемы, связанные с драйверами в Windows NT. Однако я бы предпочел сосредоточиться на Windows Server 2003. Я упомянул эти методы только потому, что их можно использовать как в Windows NT, так и в Windows Server 2003, а также потому, что некоторые развертывания Windows NT Server все еще существуют.


Если машина с Windows Server 2003 выходит из строя из-за проблемы с драйвером, метод восстановления намного проще, чем методы, о которых я уже говорил. Одним из лучших доступных инструментов восстановления является безопасный режим. Когда вы загружаете Windows в безопасном режиме, она работает в режиме VGA с минимальным набором запущенных драйверов и служб. Вы ничего не можете сделать с Windows, когда она работает в безопасном режиме, но это не главное. Дело в том, что безопасный режим позволяет вам загрузить Windows, чтобы вы могли решить проблему.


Итак, безопасный режим позволяет вам загрузить Windows, чтобы вы могли решить проблему, но как вы на самом деле решаете проблему после входа в Windows? Ну, у вас есть пара вариантов. Обе эти опции доступны через Диспетчер устройств (еще один удобный инструмент, которого не было в Windows NT). Вы можете получить доступ к диспетчеру устройств, выбрав параметр «Система» на панели управления. Когда появится окно «Свойства системы», перейдите на вкладку «Оборудование» и нажмите кнопку «Диспетчер устройств». Теперь вы увидите список различных устройств в вашей системе. Щелкните правой кнопкой мыши неисправное устройство и выберите команду «Свойства» в появившемся контекстном меню. Когда вы это сделаете, вы увидите лист свойств устройства. Теперь выберите вкладку «Драйвер», показанную на рисунке A.



Изображение 20824
Рисунок A. Вкладка «Драйвер» на странице свойств устройства в диспетчере устройств позволяет исправить проблемы с драйверами устройств.


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


Вывод


В этой статье я рассказал о ряде различных вариантов восстановления, которые можно использовать для восстановления Windows после сбоя драйвера устройства. Большинство из этих методов включают загрузку Windows в специальном режиме (безопасный режим, режим VGA, последняя удачная конфигурация). Вы можете получить доступ к любому из этих режимов, нажав клавишу F8 на самом раннем этапе процесса загрузки Windows. Это приведет к тому, что Windows отобразит загрузочное меню, которое позволит вам выбрать эти различные параметры.