PsFileを使い倒せ! ~ファイルへのアクセス状況を確認する~|Windows Server|トピックス|Computerworld

CW_Welcomeバナー

header_cwr_head_mid_fl_logo

CW_ウルトラバナー_Topics02

CW_ウルトラバナー_Topics04

CW_ウルトラバナー_Topics05

CW_ウルトラバナー_Topics06

CW_ウルトラバナー_Topics07

CW_ウルトラバナー_Topics08

Windows Server

RSS
【Windows Sysinternalsを使い倒せ 第10回】

PsFileを使い倒せ! ~ファイルへのアクセス状況を確認する~

~IT管理者必携! 無償のツール集を徹底解説~
(2011年07月20日)

「Windows Sysinternals」では、リモートから特定の操作を実行できるツールとして名前が「Ps」で始まるツール群が提供されている。「PsFile」は、ファイルへのアクセス状況の確認やアクセス制御を行うツールとして利用できる。今回は、PsFileによるファイルアクセスに関わるトラブルシューティング手法を紹介しよう。

[使い倒しテク]

不要なファイルを削除したいのですが、エラーが発生して削除することができません。どうしたらファイルを削除できるようになるのでしょうか?

PsFileを使って、プロセスからのファイルアクセスを強制的に切断することで、ファイルを削除できるようになります。

 Windowsでファイルを削除しようとすると、「別のプログラムがこのファイルを開いているので、操作を完了できません」というエラーメッセージが表示されることがある(画面1)。

画面1:ファイルの削除に失敗したときに表示されるダイアログボックスの例

 これは「排他制御」という機能を通じて、ほかのプロセスからファイルにアクセスできないように制限をかけているからだ。

 Sysinternalsの「PsFile」では、現在アクセス状態にあるファイルのうち、リモートからアクセスされているファイルの一覧表示や、ファイルアクセスの強制終了(排他制御の解除)を行うことができる。

■PsFile
[URL]http://technet.microsoft.com/ja-jp/sysinternals/bb897552

 PsFileはコマンドプロンプトから実行する。そのまま実行すると、リモートから現在開いているファイルの一覧が表示される(画面2)。

画面2:PsFileを実行した様子。このコンピュータにある3つのファイル/フォルダがリモートからアクセスされていることがわかる

 PsFileを実行すると、現在開いているファイルの一覧とともに、ファイルを開いているユーザーの名前やアクセス状態(ReadやWriteなど)が同時に表示される。SharePoint Serverのように、だれが、どのファイルを開いたかを正確に把握し、その情報をいつでも参照できるシステムがあれば管理もしやすい。しかし、ファイルサーバ上にあるファイルの場合、どのユーザーがどのファイルを開いているか確認するのは難しい。このような場面で、Fileコマンドは役に立つだろう。ただし、画面2にもあるように、2バイト文字(日本語)を使うファイル名は表示が「??????」になってしまい、ファイル名を確認できないので注意してほしい。

記事詳細テキストバナー

ページの先頭へ戻る