検索
タグ
ASP.NET
.NET
ASP.NET MVC
Visual Studio
F#
Azure
ASP.NET Core
ライトニングトーク
Plone
Selenium
AJAX
C#
jQuery
SQL Server
JavaScript
ADO.NET Entity Framework
EFCore
WebMatrix
LINQ
Fizz-Buzz
カテゴリ
最新の記事
最新のコメント
記事ランキング
最新のトラックバック
以前の記事
2024年 11月 2024年 10月 2024年 09月 2024年 08月 2024年 04月 2024年 03月 2024年 02月 2024年 01月 2023年 12月 2023年 11月 2023年 10月 2023年 09月 2023年 08月 2023年 07月 2023年 06月 2023年 05月 2023年 04月 2023年 03月 2023年 02月 2023年 01月 2022年 12月 2022年 11月 2022年 10月 2022年 09月 2022年 08月 2022年 07月 2022年 06月 2022年 05月 2022年 04月 2022年 03月 2022年 02月 2022年 01月 2021年 12月 2021年 11月 2021年 10月 2021年 09月 2021年 08月 2021年 07月 2021年 06月 2021年 05月 2021年 04月 2021年 03月 2021年 02月 2021年 01月 2020年 12月 2020年 11月 2020年 10月 2020年 09月 2020年 08月 2020年 07月 2020年 06月 2020年 05月 2020年 04月 2020年 03月 2020年 02月 2020年 01月 2019年 12月 2019年 11月 2019年 10月 2019年 09月 2019年 08月 2019年 07月 2019年 06月 2019年 05月 2019年 04月 2019年 03月 2019年 02月 2019年 01月 2018年 12月 2018年 11月 2018年 10月 2018年 09月 2018年 08月 2018年 07月 2018年 06月 2018年 05月 2018年 04月 2018年 03月 2018年 02月 2018年 01月 2017年 12月 2017年 11月 2017年 10月 2017年 09月 2017年 08月 2017年 07月 2017年 06月 2017年 05月 2017年 04月 2017年 02月 2017年 01月 2016年 12月 2016年 11月 2016年 10月 2016年 09月 2016年 08月 2016年 07月 2016年 06月 2016年 05月 2016年 04月 2016年 03月 2016年 02月 2016年 01月 2015年 12月 2015年 11月 2015年 10月 2015年 09月 2015年 08月 2015年 07月 2015年 05月 2015年 04月 2015年 03月 2015年 02月 2015年 01月 2014年 12月 2014年 11月 2014年 10月 2014年 09月 2014年 08月 2014年 06月 2014年 04月 2014年 03月 2014年 02月 2014年 01月 2013年 12月 2013年 10月 2013年 09月 2013年 08月 2013年 07月 2013年 06月 2013年 05月 2013年 04月 2013年 03月 2013年 02月 2013年 01月 2012年 12月 2012年 11月 2012年 10月 2012年 09月 2012年 08月 2012年 07月 2012年 06月 2012年 05月 2012年 04月 2012年 03月 2012年 02月 2012年 01月 2011年 12月 2011年 11月 2011年 10月 2011年 09月 2011年 08月 2011年 07月 2011年 06月 2011年 05月 2011年 04月 2011年 03月 2011年 02月 2011年 01月 2010年 12月 2010年 11月 2010年 10月 2010年 09月 2010年 08月 2010年 07月 2010年 06月 2010年 05月 2010年 04月 2010年 03月 2010年 02月 2010年 01月 2009年 12月 2009年 10月 2009年 09月 2009年 07月 2009年 06月 2009年 05月 2009年 04月 2009年 03月 2009年 02月 2009年 01月 2008年 12月 2008年 11月 2008年 10月 2008年 09月 2008年 08月 2008年 07月 2008年 06月 2008年 05月 2008年 04月 2008年 03月 2008年 02月 2008年 01月 2007年 12月 2007年 11月 2007年 04月 2007年 03月 2007年 02月 2007年 01月 2006年 11月 2006年 10月 2006年 09月 2006年 08月 2006年 07月 |
2011年 09月 01日
あくる日。
突然。 Hyper-V マネージャから Hyper-V 2.0 SP1 上の仮想マシンに接続して画面を開いたところ(すなわち、リモートデスクトップ接続ではなく、いわゆる vmconnect.exe による接続)、下記の不具合が発生。
同様の現象に遭遇された方はほかにもいらっしゃったようで、例えば下記記事が、現象の説明に詳しい。 仮想マシンの画面表示がおかしくなる http://konisi.net/index.php?option=com_content&view=article&id=164:2010-11-17-10-41-36&catid=54:hyperv&Itemid=59 そのほかにも下記のブログ記事 x 1件、フォーラムのスレッド x 1件を発見した。 Hyper-V地獄 統合コンポーネントがあるときから動いていない!? http://technote.sblo.jp/article/47433254.html Hyper-V 仮想マシン接続時、ゲストOS下においてマウスの動作が不能に http://social.technet.microsoft.com/Forums/ja-JP/hypervja/thread/12f016e2-57ce-4ad2-adf6-f9f7abce682e/ これら記事にあるように、これまでは何の異常の兆候も無く、正常に仮想マシン接続できていたのだ。 さらに、どうも、この不具合は、同じハードウェア上に載っているすべてのゲスト OS で発生している感じ。 手元には様々なハードウェア構成の複数台の Hyper-V 2.0 Server があるのだが、問題が発生しているゲスト OS と発生していないゲスト OS とが混在しているハードウェア実機はなかった。 また、"このハードウェア構成の実機上でのみ不具合が発生している" という偏りもなかった。 加えて上記記事にあるように、現象はゲスト OS には関係なく発生するようだ。 Windows XP Pro SP3(x86)、Windows 2003 Server SP2(x86)、Windows 7 Pro SP1(x86)、Windows Server 2008R2 SP1(x64)... 当然、いずれも最新の統合サービスをインストール済みである。 Hype-V マネージャ側の問題でもなさそうだ。 複数台の管理用 PC から、不具合発生している同じゲスト OS に対して Hyper-V マネージャの仮想マシン接続を試みたが、結果・現象は変わらず同じだった。 ただ、確信はないが、どうも、発生時期は近いようである。 というのも、本ブログでこうして取り上げる数日前~数周前は、すべてのゲスト OS と正常に仮想マシン接続できてた覚えがあるからだ。 なお余談だが、問題が発生しているゲスト OS に対して、リモートデスクトップ接続するぶんには別になんら異常は見受けられない。 上記に挙げた記事ではいずれも、「原因不明」「再起動したら直った」といった主旨。 しかし、運用サーバーではそうおいそれと再起動なんぞできないのだ。 画面の回復原因は不明ということで致し方ないにしても、仮想マシン接続が満足に使えないと困ることも多い。そこでまずは画面をちゃんと表示できるように試してみた。 これは上記記事にもあるように、対応手順がある。 仮想マシン接続の画面内では、かろうじてキーボードがちゃんと機能・反応してくれている。 そこで、キーボード操作のみで画面の解像度を変更するのだ。 すると上手い具合に、仮想マシン接続のウィンドウは、ちゃんとゲスト OS の解像度どおりに広がって正常化してくれる。 キーボードだけで Windows をすべて操作できるスキルが必須となっているのがちょっと注意。 あと、そもそも「ログインできるか?」という難関もある。 なにせ、仮想マシン接続のウィンドウそれ自体が VGA 程度のサイズにしかなっていない。 そんな状況で、特に Vista 世代以降の Windows のログイン画面でかつゲスト OS の解像度が 1024 x768 程度以上だと、小さくなってしまっている仮想マシン接続のウィンドウの "外" にログイン用の入力欄が表示されてしまうことになる。 画面からは一体全体、いまログイン入力欄がどうなっていて、どこにフォーカスが当たっているか見えないのだ。 それでもとりあえず、これら難関を乗り切れば、画面表示は回復できる。 マウスの回復これは先に挙げたいずれの記事でも未解決のままで苦労した。しかしいろいろ推測と試行錯誤を重ねた結果、ようやく回復方法を見つけた。 デバイスマネージャーから、[ヒューマンインターフェースデバイス] - [Microsoft Virtual Machine バス入力デバイスミニポート] デバイスを探し出し、このデバイスをいったん無効にしてから、即座に再度有効にするのだ。 有効にし直した途端に、それまで見えなくなっていたマウスカーソルが突然ポンと表示されて、マウス操作が正常にできるようになる。 なお、この回復手順も、キーボード操作だけでデバイスマネージャーまでたどり着いて、デバイスの有効無効を切り替えることが出来るという、キーボード操作スキルが必須となる。 留意されたし。 まとめ以上の手順で、ゲスト OS をシャットダウンしたり再起動したりすることなく、画面表示の異常と、マウスの異常から回復することができるようになった。なお、この不具合が発生しているハードウェア上のゲスト OS x 1台を上記手順で回復させるだけでは、同じハードウェア上の残るほかのゲスト OS では不具合は改善されなかった。 すべてのゲスト OS 1台 1台に対して、上記手順を繰り返し実行して回復させる必要がある。 しかしいずれにせよ、これは対症療法に過ぎず、どうしてこのような不具合が発生するのか、根本治療ができたわけではない。 上記回復手順などを考えると、どうもゲスト OS の VM Bus に絡んだデバイスドライバでなにか起きているのではないかと想像されるのだが。 はてさて。 2011/09/05 追記このブログ投稿にコメント頂戴したのだが、そのまんまズバリのKBが挙がっていたそうだ。After a new Hyper-V VMMS certificate is generated, there are mouse and screen resolution issues when managing a virtual machine using the Hyper-V Manager Console http://support.microsoft.com/kb/2413735 上記KB、すでに改版されて第2版のようであるが、少なくとも今年2011年の6月末には明らかになっていたようである。 この現象の原因としては、VMMS が発行する証明書の有効期限が1年であり、この証明書が再生成されると発生するとのこと。 現象が起きてしまってからは、ゲスト OS を再起動するか、本稿に書いたような手順で回復するしかないことには変わりがない模様。 しかし、事前に自己防衛的に、証明書発行を既定の動作に任せず、自前で有効期限が長期にわたる証明書を作って設定してやる方法があるようだ。
by developer-adjust
| 2011-09-01 22:24
| Windows
|
ファン申請 |
||