2013年6月4日火曜日

Windowsトラブル対処方: 削除出来ないファイルの削除





対象OS
WindowsXP
Windows2003
Windows2008
Windows7



概要

システムを運用していると、Windows上で消せないファイルが作成されることがよくあるので
そのファイルの削除方法をまとめたものである。


Movefile コマンド

Microsoftとして推奨しているのが、Movefile コマンドである。
次回のコンピュータ再起動時にファイルを削除するように予約だけして実際にファイル削除は行わない。
緊急ではない、かつ、OSやシステム上重要なミドルウェアが利用するファイルなど判断できない場合はこちらの対応を勧める。


 メリット:
  安全にファイルが削除できる

 デメリット:
  ファイル削除に再起動を必ず伴うため、緊急の場合や再起動予定が無いサーバ用途では実施し辛い


Movefile入手先:
 http://technet.microsoft.com/ja-jp/sysinternals/bb897556

 インストールは不要(圧縮ファイルの展開のみ)


cmd> movefile aaa.txt ""   ・・・ ①

Movefile v1.01 - copies over an in-use file at boot time
Move successfully scheduled.


cmd> dir    ・・・ ②
 ドライブ C のボリューム ラベルは Cdrive です
 ボリューム シリアル番号は 2CB0-81BF です

 C:\work のディレクトリ

2013/06/04  13:32    <DIR>          .
2013/06/04  13:32    <DIR>          ..
2013/06/04  13:32                 0 aaa.txt
               1 個のファイ ル                   0 バイト
               2 個のディレクトリ  62,068,682,752 バイトの空き領域


CMD> pendmoves aaa.txt      ・・・ ③

PendMove v1.2
Copyright (C) 2004-2013 Mark Russinovich
Sysinternals - wwww.sysinternals.com

Source: C:\work\aaa.txt
Target: DELETE

Time of last update to pending moves key: 2013/06/04 13:34



解説:

① movefile コマンド
 次回再起動時に削除するファイルを指定し削除予約だけ行う。

   cmd> movefile [削除対象ファイル] ""


② ファイルの存在確認

③ pendmoves コマンド
 予約状況の確認を行う。

   cmd> pendmoves [対象ファイル]


Process Explorer

Movefile コマンドとは異なり、ファイルをつかんでいるプロセスを特定し、ファイルを削除することが可能である。


メリット:
 すぐに削除可能(急いでいるときには便利)

デメリット:
 依存関係を把握していないとサーバ再起動が発生したり、
 次回起動時にサービスが立ち上がらないなどの現象が起こる。


ProcessExplorer入手先:
 http://technet.microsoft.com/ja-jp/sysinternals/bb896653.aspx
 インストール不要(圧縮ファイルの展開のみ)


①Process Explorer を開き、検索機能 (Ctrl + F) を開く
②検索画面で削除したいファイルの名前を入力して検索
③検索結果で表示されたファイルをダブルクリック
④右クリックメニューから「Close Handle」を選択



なお、ProcessExplorerは他の用途でもかなり使える


0 件のコメント:

コメントを投稿