Самоучитель
системного администратора

11.3. Ошибки программного обеспечения

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

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

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

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

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

Восстановление "упавших" систем

Если сервер перестал загружаться, то администратор имеет несколько следующих возможностей восстановления работоспособности информационной системы:

  • восстановление из резервной копии;
  • восстановление загрузчика системы;
  • загрузка в специальных режимах с последующими операциями устранения неисправностей;
  • откат к предыдущим состояниям (для Windows: загрузки последней удачной конфигурации, возвращение к сохраненному состоянию — точке восстановления);
  • переустановка.

Восстановление из резервной копии

Восстановление из резервной копии — самый простой и быстрый способ решения проблемы. Быстрый, потому что вы уже знаете все необходимые шаги. Простой, потому что никаких проблем решать не нужно, достаточно действовать по заранее подготовленному сценарию. Главное, чтобы вы имели актуальную копию данных.

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

На рис. 11.11 показан процесс восстановление системы на новое оборудование в программе NetBackup Bare Metal Restore компании Symantec. Система была загружена по сети, программа провела разметку жесткого диска и выполняет копирование с сервера сохраненных данных. При этом сама программа формирует актуальную копию данных, собирая ее из файлов полного и промежуточного резервного копирования. После завершения восстановления необходимо будет только добавить драйверы новых устройств, если таковые появились в системе (драйверы систем хранения и сетевых адаптеров для нового оборудования в случае необходимости готовятся на этапе формирования задания восстановления).


Рис. 11.11.
Процесс восстановления системы на новое оборудование из резервной копии

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

Восстановление загрузчика системы

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

Восстановление загрузчика — только первый шаг; обычно за ним следуют операции по восстановлению загрузки в полном объеме (успешного старта всех служб сервера).

Восстановление загрузки Windows 7/2008/Vista

В перечисленные операционные системы встроен мастер, который автоматически запускается при обнаружении проблем со стартом системы (рис. 11.12).

Рис. 11.12.
Попытка автоматического восстановления системы

Если работа мастера не привела к успеху (редкая ситуация), то можно в варианте восстановления открыть командную строку и попытаться выполнить операции вручную (часть описана далее для консоли Windows XP).

Восстановление загрузки Windows XP/2003/2000

Восстановить загрузку перечисленных систем можно с помощью консоли восстановления. Консоль восстановления — это фактически режим командной строки, доступный при загрузке с установочного диска. В консоли восстановления присутствует ограниченный набор команд, с помощью которых можно выполнить операции настройки системы и восстановления структуры жесткого диска. Полный перечень команд доступен при вызове справки в режиме командной строки (help /?).

Консоль восстановления можно добавить заблаговременно как дополнительный вариант загрузки операционной системы, если вызвать команду установки операционной системы с ключом /cmdcons (i386\winnt32.exe /cmdcons). Обычно же необходимость использования консоли восстановления возникает внезапно, когда на вашем компьютере отсутствует соответствующий вариант загрузки. В этом случае в режим консоли восстановления можно перейти следующим способом:

  1. Укажите в BIOS компьютера вариант загрузки с компакт-диска.
  2. Вставьте в устройство чтения компакт-дисков дистрибутив операционной системы и начните с него установку Windows.
  3. Когда программа установки запросит, что вы хотите выполнить, выберите операцию восстановления операционной системы.
  4. На следующем шаге выберите вариант загрузки консоли восстановления.

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

Если компьютер загружается с устройства хранения данных, драйвер которого не входит в стандартную поставку Windows, то для входа в режим консоли восстановления применяется традиционный способ: необходимо нажать клавишу и вставить дискету с драйверами изготовителя устройства.

    Примечание

    Если папка, предназначенная для установки системы (файлы реестра), повреждена, то вы попадете в командную строку программы без запроса пароля. В этом случае следует обязательно проверить и восстановить структуру диска. Если на компьютере повреждена загрузочная область жесткого диска, то для входа в консоль восстановления (если под рукой нет компакт-диска с дистрибутивом) приготовьте загрузочные дискеты для соответствующей версии Windows и включите в файл boot.ini следующую строчку: C:\CMDCONS\BOOTSECT.DAT="Windows Recovery Console" /cmdcons

Перечислим основные операции, которые приходится выполнять в режиме консоли восстановления.

  1. Восстановление загрузочных областей диска. Для этой цели следует использовать команды fixboot и fixmbr.
      Примечание

      Если у вас на диске установлена только одна операционная система, то можно проигнорировать предупреждения, которые будут выводиться командами.

  2. Восстановление отсутствующих загрузочных или системных файлов.

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

  3. Решение проблем со службой (драйвером нового устройства).

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

  4. Восстановление структуры жесткого диска.

    Выполняется стандартно с использованием команды chkdsk. Единственное, что программа может запросить у вас, — вручную указать путь к файлу библиотек, используемому при запуске этой утилиты (если повреждена системная папка; следует указать папку на компакт-диске).

  5. Устранение нарушений в реестре.

    Часто система не может загрузиться из-за нарушений структуры реестра, причем не помогает даже выбор последней удачной конфигурации. Попробуйте вручную восстановить последнюю копию той ветви реестра, о которой сообщает программа загрузки. Для этого перейдите в каталог SYSTEM32\CONFIG, найдите файл реестра и переименуйте его (по умолчанию текущие файлы не имеют расширения), после чего скопируйте (переименуйте) одноименный файл с расширением sav в файл без расширения. Другое место, откуда можно взять файлы копий реестра системы, — это точки восстановления (см. разд. "Загрузка конфигурации из точек восстановления Windows" далее в этой главе).

После выполнения операции перезагрузите систему в нормальном режиме.

Восстановление загрузки Linux-систем

Для восстановления следует воспользоваться установочным диском. Например, в Ubuntu опция загрузки в режиме восстановления находится последней строчкой на первом экране. Называется она Восстановление системы (или Rescue broken system, если вы не выбрали русский язык отображения).

После выбора этой опции начнется выбор настроек системы, определение параметров оборудования, выбор пакетов — словом, внешне все будет примерно так, как при новой установке. Отличие — в наличии строки Режим восстановления в левом верхнем углу экрана. В итоге программа предложит выбрать раздел, к которому следует подключиться (если установлена только одна операционная система, то обычно следует выбрать первую позицию списка), после чего на экране появится главное меню программы установки (рис. 11.13).

Рис. 11.13.
Окно режима восстановления Ubuntu

Для того чтобы восстановить загрузку, нужно выбрать вариант Установка системного загрузчика GRUB на жёсткий диск и следовать рекомендациям мастера операций.

    Примечание

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

Если опции восстановления недоступны

Описанные ранее способы восстановления загрузки "работают", если не нарушена структура жесткого диска. Если, например, повреждена таблица разбиения диска или он был по ошибке отформатирован, то сначала нужно вылечить сам диск.

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

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

Загрузка в специальных режимах

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

Загрузка Windows в безопасном режиме

В варианте загрузки в безопасном режиме можно решить следующие проблемы:

  • ошибки конфигурации системного программного обеспечения;
  • сбои из-за установки новых устройств или программ, в том числе и ошибки, возникшие вследствие установки сервис-паков и обновлений.

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

    Примечание

    Если настройками отключен вывод меню загрузки, то перейти в безопасный режим можно, удерживая нажатой клавишу <Shift> при включении компьютера (или нажимая клавишу <F8>).

Загрузка *nix-систем в однопользовательском режиме

Для *nix-систем основным вариантом лечения "тяжелобольных" является загрузка в однопользовательском режиме.

Опция перехода в однопользовательский режим обычно отображается последним пунктом в меню загрузки. Но даже если такой позиции нет, то вызвать режим достаточно просто: нужно выбрать пункт меню загрузки, перейти в опции его редактирования и добавить параметр S (или слово Single, эта рекомендация относится к загрузчикам Grub, для других вариантов необходимо уточнить по документации) в конец строки и начать загрузку.

В этом режиме вход пользователя осуществляется с правами суперпользователя (пароль не запрашивается), скрипты инициализации не выполняются и администратору доступны любые настройки системы. Главное неудобство для администраторов, воспитанных на Windows, — необходимость работы в режиме командной строки (в том числе, и в текстовом редакторе типа vi) и наличия некоторого опыта: где что искать и как править.

Откат к предыдущим состояниям системы

Загрузка последней удачной конфигурации поможет в случаях:

  • ошибок конфигурации во время последней сессии;
  • установки неверного драйвера устройства.

Данный вариант загрузки поможет в тех случаях, когда пользователь не заходил в систему: после входа конфигурация сохраняется, поэтому в следующий раз вы будете загружаться уже в нее. Но если после каких-либо изменений система даже не доходит до окна входа в нее, то загрузка последней удачной конфигурации поможет решить проблему.

Загрузка конфигурации из точек восстановления Windows

Начиная с Windows Vista в системе предусматривается создание точек восстановления. Их можно создавать вручную, но делать это регулярно забывает большинство администраторов. Хотя было бы хорошей практикой сохранять состояние системы перед выполнением тех или иных модификаций.

В последнее время создание точек восстановления встраивают в установочные пакеты программ и оборудования. В результате точка восстановления создается автоматически и может быть использована для отказа к нормальному функционированию.

Возврат к предыдущему состоянию может быть проведен в работающей системе выбором соответствующей команды. Таким способом можно компенсировать неудачные попытки установки оборудования или программ. Но откат можно выполнить и не только из самой системы. Это можно сделать как из режима восстановления самой операционной системы, так и из программ типа ERD Commander в режиме загрузки с компакт-диска (рис. 11.14).

Рис. 11.14.
Мастер отката к предыдущим точкам восстановления системы при загрузке с внешнего компакт-диска (пакет ERD Commander 2005)

Значения реестра системы сохраняются в папках точек контрольного восстановления системы — System Volume Information. При работе операционной системы эта папка доступна только системной учетной записи. Администратор может настроить для себя права доступа к ней. В режиме консоли восстановления контроль прав доступа не действует, данные из папки будут доступны без дополнительных операций. Эти параметры обычно более точно соответствуют последним настройкам системы, чем копии реестра, например, в папке \Windows\Repair (здесь и далее в примерах этого раздела считается, что система установлена в папку C:\Windows; иначе следует заменить название каталога).

Данные хранятся в каталогах с именами, аналогичными _restore{CFA91D90-58C3-4176-A156-29790E9DAF6B} (после "restore" идет значение GUID). Следует зайти в папку, которая соответствует самой поздней дате восстановления, открыть в ней каталог RPномер и зайти в папку snapshot.

В папке snapshot сохранены файлы реестра, правда, под именами, отличающимися от тех, которые используются в папке конфигурации. Поэтому для замены файлов реестра администратору необходимо скопировать файлы, перечисленные в табл. 11.1, в папку \Windows\System32\Config и переименовать их так, как указано в правом столбце.

Таблица 11.1.
Соответствие имен файлов

    Примечание

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

Восстановление Windows путем переустановки

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

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

Режим восстановления не доступен, если:

  • для восстановления используется не тот вариант дистрибутива, с которого была установлена система (например, делается попытка восстановления с дистрибутива на другом языке);
  • в системе возникли серьезные повреждения (например, разрушения файловой структуры, в результате чего программа не может обнаружить папки установленной системы).

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

Восстановление удаленных данных

Администратору часто приходится восстанавливать один или несколько файлов, случайно удаленных пользователем. Оптимально, если на предприятии будет настроена система резервного копирования и пользователь сможет сам восстанавливать удаленные данные.

Однако большой объем информации доступен к восстановлению штатными средствами.

Корзины

"Штатная" Корзина ОС Windows малоэффективна прежде всего из-за наличия лимита по объему: если удалено файлов больше, чем настроен лимит в свойствах Корзины, то данные уже не будут доступны к восстановлению. Кроме того, Корзина не защищает файлы, удаляемые по сети, в режиме DOS и т. п.

Для такой защиты доступны коммерческие решения в виде специализированных корзин (например, Norton Protected Recycle Bin) или специализированных серверных решений, таких как Executive Undelete от Executive Software International, Inc. или аналогичных. Подобные программы могут быть централизованно развернуты администратором на рабочие станции и позволяют выполнять операции восстановления как непосредственно пользователем, так и администратором при подключении по сети.

Восстановление из теневых копий

В Windows 7/2008 реализована технология теневого копирования для локальных дисков (в Windows 2003 эта возможность присутствует только для сетевых ресурсов и носит название восстановление предыдущей версии документа; по умолчанию эта опция не настроена).

Технология теневого копирования (shadow copy) состоит в создании по определяемому администратором графику копий информации. По умолчанию она включена, администратор может изменить график создания копий или отключить данную функциональность.

Предел количества хранимых копий за различные моменты времени определяется только размером дискового пространства, отведенного для данной операции (рис. 11.15). При этом сама технология очень экономно использует дисковое пространство: десяти процентов объема диска может хватить на хранение промежуточных копий за несколько месяцев интенсивной работы.

Рис. 11.15.
Просмотр предыдущих версий файла

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

    Примечание

    Для доступа к предыдущим версиям из Windows XP необходимо установить специального клиента. Его установочные файлы находятся в папке установки сервера Windows 2003 по пути Windows\system32\clients\twclient\ и далее — в зависимости от типа платформы клиента. После установки этой программы при открытии свойств файла в сетевой папке появляется дополнительная вкладка Предыдущие версии. На этой вкладке можно выполнить необходимые операции восстановления информации.


Рейтинг@Mail.ru