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

Но помощь специалистам Microsoft в поиске причин неполадок в системе обычно не сводится к тому, чтобы просто направить им список шагов, выполнение которых должно помочь воспроизвести проблему. Ведь часто бывает неясно, как и когда операционная система пришла в то или иное состояние, поэтому перечень шагов, приводящих к возникновению проблемы на вашей машине, ничего не даст специалисту, если он пытается воссоздать проблему на компьютере, где установлена «чистая» операционная система. В этой статье я расскажу о Disk2vhd, новой утилите Windows из коллекции Sysinternals, которая может помочь в подобных ситуациях, возникающих при диагностировании систем Windows.

Сценарии использования Disk2vhd

Disk2vhd (disk2vhd.exe) — еще одна замечательная утилита, написанная Марком Русиновичем и Брайсом Когсуэллом. Вы можете загрузить ее по адресу technet.microsoft.com/en-us/sysinternals/ee656415.aspx. Disk2vhd преобразует действующую физическую машину в виртуальный жесткий диск Virtual Hard Disk (VHD) в дисковом формате Microsoft Virtual Machine (VM). Переведя систему в формат .vhd, вы даете возможность инженерам поддержки корпорации Microsoft быстро загрузить образ либо в Hyper-V, либо в Microsoft Virtual PC и воссоздать возникшую проблему. А когда проблема воспроизведена, наши специалисты по отладке могут проанализировать ее и обычно отыскивают корневую причину в течение нескольких часов. Разумеется, существуют и другие вполне очевидные возможности использования данной утилиты. Ее можно применять для консолидации серверов или в других сценариях, где возникает потребность в преобразовании физической системы в виртуальную машину.

К примеру, получив образ системы заказчика, инженер из моей группы разрешил проблему, не дававшую покоя сотрудникам службы поддержки в течение трех месяцев, при этом решение было найдено всего за три часа. Заказчик реализовал в журнале событий приложения специализированный дескриптор безопасности, и в результате функция Easy Print давала сбой при выполнении в среде Windows Server 2008. А ведь кто бы мог подумать, что следствием изменения разрешения в журнале приложения станет сбой операции печати?

До того, как мы получили от заказчика образ, специалисты нашей группы рассматривали множество теорий относительно причины данной проблемы и принимали меры к ее решению, но безуспешно. Однако когда образ был все-таки получен, инженер быстро решил проблему, которая, как оказалось, состояла в том, что специализированный дескриптор безопасности отменял доступ локальной системной учетной записи к операциям записи в журнал приложения. Процесс Easy Print должен иметь возможность регистрировать (то есть записывать) идентификатор Event Source ID в журнале Application Event, и он реализует эту возможность через локальную системную учетную запись.

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

Возможность создания виртуальных образов из физических систем (P2V) обеспечивает и диспетчер System Center Virtual Machine Manager (SCVMM). Пробную версию SCVMM можно получить по адресу www.microsoft.com/downloads/details.aspx? FamilyID=292de23c-845c-4d08-8d65‑b4b8cbc8397b&displaylang=en. Но надо сказать, что продукт SCVMM довольно велик (свыше 1 Гбайт), и его установка, а также настройка сопряжены с гораздо большими трудностями, чем в случае с Disk2vhd. Поэтому, если ваша задача — всего лишь преобразовать физическую систему в виртуальную машину, Disk2vhd — именно то, что вам нужно. Это простая в использовании утилита, и ее должен иметь под рукой любой администратор, которому приходится обращаться в службу техподдержки Microsoft. Disk2vhd может помочь сберечь время, деньги и нервы, если у вас возникают проблемы, которые можно воссоздать на виртуальной машине за пределами корпоративной сети. Если говорить об экономии времени, должен признаться, что в утилите Disk2vhd мне нравится то, что образ .vhd напрямую создается для сред Hyper-V или Virtual PC. Это позволяет мне, как инженеру службы поддержки Microsoft, быстро проходить стадии конфигурации и установки и заниматься непосредственно отладкой, тем самым решая проблему заказчика в более сжатые сроки.

Работа с утилитой Disk2vhd

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

Интерфейс Disk2vhd

На моей системе Dell Precision 380, оснащенной оперативной памятью объемом 4 Гбайт и функционирующей под Windows 7, на конвертацию образа в файл .vhd у утилиты Disk2vhd ушло примерно 10 минут. Через несколько секунд мне удалось успешно загрузить образ в систему Hyper-V, где я мог взаимодействовать с ним, как если бы работал с самой физической машиной. Если бы я пытался решить реальную проблему, то мог бы загрузить файл .vhd, сохранить его в системе Hyper-V, и уже через несколько секунд приступил бы к процессу отладки, не тратя времени на все дополнительные манипуляции, к которым обычно приходится прибегать при решении проблем на удаленной системе.

Попробуйте сами

Итак, можете ли вы создавать образ для всякой проблемы и рассчитывать, что она будет решена в течение нескольких часов? Ответ прост — нет, и связано это с тем, что не всякая проблемная ситуация может быть воспроизведена, даже если в вашем распоряжении имеется образ системы. Перед тем как направлять образ сотрудникам техподдержки Microsoft, попытайтесь определить, существует ли возможность воссоздания вашей проблемы. Многие ситуации можно воспроизвести «как есть» или с небольшой подстройкой. Лучший способ определить, является ли ваша проблема кандидатом на то, чтобы из нее «лепили» образ, — попытаться создать образ системы с помощью утилиты Disk2vhd, а затем попробовать воспроизвести ситуацию в изолированной сети. Собственно, именно этим занялись бы и мы после того, как образ поступил бы в службу техподдержки Microsoft.

Хочу выразить особую благодарность Марку Русиновичу и Брайсу Когсуэллу — авторам еще одного ценного и простого в использовании инструмента, который окажет нам неоценимую помощь в оперативном решении любых вопросов. И еще одна благодарность — Венкатешу Ганга, старшему инженеру службы технической поддержки корпорации Microsoft, который оказал мне большую помощь в подготовке данной статьи.

Майкл Моралес (morales@microsoft.com) — старший инженер службы технической поддержки подразделения Microsoft Global Escalation Services. Специализируется на прогрессивных методах отладки в среде Windows и вопросах, связанных с быстродействием

Материалы по теме

Дополнительные сведения по утилите Disk2vhd:
Disk2Vhd, the Physical to Virtual
Converter, InstantDoc
ID 102940
Disk2vhd v1.0, technet.microsoft.com/en-us/sysinternals/ee656415.aspx