ボリュームロックエラー調査機能で使用する調査ツールの設定方法について説明します。
ポイント
Windows Server 2008以降を利用する場合
「1.7.3 ユーザーアカウント制御を使用している場合の注意事項」を確認してから、調査ツールを設定してください。
ツールによるOSの性能劣化はないため、「使用中ロックエラー」発生時に原因を迅速に特定できるように、運用開始前に本機能を有効(常時有効)にしておくことを推奨します。
ツールによるOSの性能劣化が考えられるため、「使用中ロックエラー」発生時だけ本機能を有効にすることを推奨します。
以下のURLからhandle.exeをダウンロードし、下記のディレクトリに格納してください。
http://technet.microsoft.com/ja-jp/sysinternals/bb896655.aspx
作業用ディレクトリ\var\HandleTool |
クラスタ運用の場合は、クラスタの各ノードにhandle.exeを格納してください。
handle.exeの格納後、handle.exeを格納したすべてのノードで以下の作業を実施してください。
手順7、8、10は、Windows Server 2008以降を利用する場合に実施してください。
AdvancedCopy Managerのコマンドを実行するユーザーアカウントでWindowsにログオンしてください。
コマンドプロンプトを起動し、cdコマンドで「作業用ディレクトリ\var\HandleTool」に移動してください。
コマンドプロンプトで「handle.exe」と入力し、リターンキーを押してください。
「Handle License Agreement」ダイアログボックスが現れたら、使用許諾契約の条項を読み、使用許諾契約の条項に同意できる場合は「Agree」ボタンをクリックしてください。
システムで使用していないサービス名を用意してください。
サービス名を使用しているかどうかは、以下のコマンドで確認してください。
sc qc "使用しているかどうかを確認するサービス名" |
[例]サービス名"ACMHandle"を使用しているかどうかを確認
C:\>sc qc "ACMHandle" |
以降の手順では、ここで用意したサービス名を"使用していないサービス名"と表記します。
以下のコマンドを実行してください。
Windows Server 2012では、事前に、インタラクティブサービスを有効にする必要があります。次のレジストリキーに含まれるNoInteractiveServicesの値を、0に設定してください。すでに0が設定されている場合は、このレジストリ操作は不要です。レジストリの操作を誤ると、深刻な問題が発生することがあります。レジストリの編集には十分に注意してください。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows
sc create "使用していないサービス名" binPath= "cmd.exe /k 作業用ディレクトリ\var\HandleTool\handle.exe" type= own type= interact sc start "使用していないサービス名" |
[例]システムで使用していないサービス名が"ACMHandle"、作業用ディレクトリがC:\Win32app\AdvancedCopyManager
C:\>sc create "ACMHandle" binPath= "cmd.exe /k C:\Win32app\AdvancedCopyManager\var\HandleTool\handle.exe" type= own type= interact C:\>sc start "ACMHandle" |
タスクバーに表示されるアイコンをクリックしてウィンドウを表示させてください。
「メッセージを表示する」または「メッセージの表示」ボタンをクリックしてください。
「Handle License Agreement」ダイアログボックスが現れたら、使用許諾契約の条項を読み、使用許諾契約の条項に同意できる場合は「Agree」ボタンをクリックしてください。
「今すぐ戻る」ボタンをクリックしてください。
以下のコマンドを実行してください。
sc delete "使用していないサービス名" |
[例] システムで使用していないサービス名が"ACMHandle"
C:\>sc delete "ACMHandle" |
手順6でインタラクティブサービスを有効にした場合は、無効にします。手順6のレジストリキーに含まれるNoInteractiveServicesの値に1を設定してください。レジストリの操作を誤ると、深刻な問題が発生することがあります。レジストリの編集には十分に注意してください。
注意
上記作業を事前に行わなかった場合は、「使用中ロックエラー」発生時にコマンドが応答を停止します。
このとき、「Handle License Agreement」ダイアログボックスは表示されません。
タスクマネージャを使って、handle.exeのプロセスを強制終了させてください。
openfiles.exeを使ってローカルで開かれているファイルの情報を追跡するには、'maintain objects list'を有効にする必要があります。'maintain objects list'を有効にするには、コマンドプロンプトで「openfiles /local on」を実行し、システムを再起動してください。
クラスタ運用の場合は、クラスタを構成する各ノードで上記コマンドの実行およびシステム再起動を行ってください。
次に、以下の条件に該当する場合だけ、%SYSTEMROOT%\system32\openfiles.exe(通常、%SYSTEMROOT%は、C:\Windowsになっています)を下記のディレクトリにコピーしてください。
作業用ディレクトリ\var\Openfiles_WOW64 |
[条件]
OSが、Windows Server 2003, x64 Editionの場合
OSが、Windows Server 2008(x64)、Windows Server 2008 R2、Windows Server 2012であり、かつ、32bit版のAdvancedCopy Managerを使用している場合
クラスタ運用の場合は、クラスタの各ノードにopenfiles.exeを格納してください。