ストレージセンサーで削除が失敗する事象の調査
目次
(本記事はマイクロソフト社員によって公開されております)
こんにちは、日本マイクロソフトの Windows プラットフォーム サポートです。
ここではストレージセンサーでファイルが削除できない問題が発生した際に採取すべき資料についてご紹介します。まずは調査の初動に有効な以下の 2 パターンをご案内させていただきます。
[A] 事象の再現性がある場合
- 追跡型のトレース ログをエラー発生時間帯に採取する
- トレース ログ採取後、サポート情報ログ (イベント ログやシステム情報等) を採取する
[B] 過去に発生したエラーであり、再現性が無い場合
- サポート情報ログ (イベント ログやシステム情報等) を採取する
[A] 事象の再現性がある場合
以下の URL から TSS.zip をダウンロードし、Zip を展開します。
※ 2024年7月8日以降ツールの入手方法の変更が計画されています。該当 URL にアクセスできない場合、サポート リクエストを発行の上、担当エンジニアまでご連絡ください。
展開した TSS フォルダーを調査対象となる端末上の任意のパスに配置します。
Windows PowerShell (powershell.exe) を [管理者として実行] にて開始します。
“cd” コマンドで TSS フォルダーを配置したパスにカレント フォルダーを移動します。例として、“C:\Test” フォルダーに TSS フォルダーを配置した場合は以下のように実行します。
cd C:\Test\TSS
以下のコマンドでログ取得を開始します。
Set-ExecutionPolicy bypass -Scope Process -Force .\TSS.ps1 -Start -SHA_StorageSense -SHA_Storsvc -Procmon -noBasicLog -StartNoWait -noUpdate
- 使用許諾の確認 (End User License Agreement) が表示された場合は内容を読んでいただき、[Accept] ボタンで同意していただきますようお願い申し上げます。
- ログファイルは既定で C:\MS_DATA に出力されます。もし、別の場所に出力されたい場合には -LogFolderPath オプションを付与してください。
(実行例)
.\TSS.ps1 -Start -SHA_StorageSense -SHA_Storsvc -Procmon -noBasicLog -StartNoWait -noUpdate -LogFolderPath D:\MS_DATA
事象を再現させます。
6.1. Powershell を管理者モードで開き、下記コマンドにて、削除したいファイルの情報を取得します。
Get-Item "<フォルダパス>\*" | Format-Table -Property Name, CreationTime, LastWriteTime, LastAccessTime | Out-File C:\mslog\Get-Item-Before.txt
ゴミ箱内のファイルが対象の場合、フォルダパスとして 以下を指定ください。
C:`$RECYCLE.BIN<SID>*
上記の通り、Powershell 内で指定する場合は、$Recycle の前に エスケープ ` が必要です。SID は 以下の手順でご確認いただくことが可能です。
(1) エクスプローラーを起動し、[表示] タブの [オプション]からフォルダーオプションを開き、[表示]タブから [保護されたオペレーティングシステムファイルを表示しない(推奨)] のチェックを外します。[OK]で閉じます。
(2) エクスプローラーの[表示] タブから [隠しファイル] のチェックを入れます。
(3) エクスプローラーから Cドライブ > $Recycle.Bin > ごみ箱 へアクセスし、アドレスバーをクリックし、フォルダーパスをご確認ください。
フォルダーパスの例: C:\$Recycle.Bin\S-1-5-21-0000000000-0000000000-0000000000-0000 PowerShellでの指定例: “C:\`$RECYCLE.BIN\S-1-5-21-0000000000-0000000000-0000000000-0000\*”
6.2. [Windows キー + R ] を実行し、 [ファイル名を指定して実行] ダイアログを表示させます。
6.3. 名前の項目に “regedit” と入力し、 [OK] をクリックします。
6.4. 以下のレジストリが存在する場合、レジストリを削除します。(2つの項目がいずれも存在しない場合は次の手順に移動します)
// キー名 :
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy// 項目名 :
StoragePoliciesLastTrigger
StoragePoliciesLastFailure* 上記のレジストリが存在しない場合に、前回ストレージセンサーが実行されていないとみなされ、約 10 分以内にストレージセンサーを実行します。
6.5. 20 分待ちます。
6.6. 20分後経過後、Powershell を管理者モードで開き、下記コマンドにて、削除したいファイルの情報を取得します。
Get-Item "<フォルダパス>\*" | Format-Table -Property Name, CreationTime, LastWriteTime, LastAccessTime | Out-File C:\mslog\Get-Item-After.txt
事象発生後、以下のコマンドを実行してトレース ログを停止します。
.\TSS.ps1 -Stop
正常に停止ができない場合について
- エラー内容が確認できるスクリーン ショットもしくは、エラー内容をコピーした情報をお寄せください。
- 実行状況の確認のため .\TSS.ps1 -Status コマンドの実行結果をお知らせください。
- 再度 .\TSS.ps1 -Stop コマンドを実行し、情報採取を停止していただきますようお願いいたします。
サポート情報ログを採取するため、以下のコマンドを実行します。
.\TSS.ps1 -CollectLog SHA_support-all -noBasicLog -noUpdate
出力先フォルダー(既定は C:\MS_DATA) を zip で圧縮いただき、アップロード サイトへご提供ください。
[B] 過去に発生したエラーであり、再現性が無い場合
以下の URL から TSS.zip をダウンロードし、Zip を展開します。
※ 2024年7月8日以降ツールの入手方法の変更が計画されています。該当 URL にアクセスできない場合、サポート リクエストを発行の上、担当エンジニアまでご連絡ください。
展開した TSS フォルダーを調査対象となる端末上の任意のパスに配置します。
Windows PowerShell (powershell.exe) を [管理者として実行] にて開始します。
“cd” コマンドで TSS フォルダーを配置したパスにカレント フォルダーを移動します。例として、“C:\Test” フォルダーに TSS フォルダーを配置した場合は以下のように実行します。
cd C:\Test\TSS
サポート情報ログを採取するため、以下のコマンドを実行します。
Set-ExecutionPolicy bypass -Scope Process -Force .\TSS.ps1 -CollectLog SHA_support-all -noBasicLog -noUpdate
- 使用許諾の確認 (End User License Agreement) が表示された場合は内容を読んでいただき、[Accept] ボタンで同意していただきますようお願い申し上げます。
- ログファイルは既定で C:\MS_DATA に出力されます。もし、別の場所に出力されたい場合には -LogFolderPath オプションを付与してください。
(実行例)
.\TSS.ps1 -CollectLog SHA_support-all -noBasicLog -noUpdate -LogFolderPath D:\MS_DATA
出力先フォルダー(既定は C:\MS_DATA) を zip で圧縮いただき、アップロード サイトへご提供ください。
情報採取ツール TSS に関してよく寄せられる質問
情報採取を行うツール TSS に関する一般的なご質問を以下のページにお纏めしています。必要に応じてご参照ください。
以上です。 本情報が少しでも皆様のお役に立てば幸いです。
本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。