OS 起動からファイルやレジストリへのアクセスを確認する

目次

本記事はマイクロソフト社員によって公開されております。

いつも弊社製品をご利用いただきまして誠にありがとうございます。Windows プラットフォーム サポートの栗木です。
今回は、Process Monitor ツールにより、OS 起動からファイルやレジストリへのアクセス状況を確認する方法をご紹介いたします。
Process Monitor は弊社が無償で公開している Sysinternals に含まれるツールの一つで、プロセスによるファイルやレジストリへのアクセス、プロセスやスレッドの起動や終了といったアクティビティについて、記録や解析を行うことが可能です。

OS 起動からではない期間のログ取得方法については、以下の記事でご案内しております。
Process Monitor ログの採取手順
https://jpdscore.github.io/blog/debugging/collect-procmon/

Process Monitor ログ取得手順(OS 起動から)

  1. 以下のサイトからProcess Monitor をダウンロードします。
    Process Monitor - Sysinternals | Microsoft Learn
    https://learn.microsoft.com/en-us/sysinternals/downloads/procmon

  2. ダウンロードした ProcessMonitor.zip をの任意のフォルダーに置き、展開します。

  3. Procmon64.exe を実行します。

  4. 管理者権限が必要であるため、権限が不足している場合は、昇格ダイアログが表示されます。

  5. Process Monitor の起動後、自動的にファイルシステム、レジストリ、プロセスおよびスレッドの活動の記録を開始し始めます。

  6. 四角のアイコン([Capture] ボタン) をクリックし、まだログを取得する必要がないため、記録を停止します。

  7. 記録を停止すると、四角のアイコン([Capture] ボタン) のハイライトがなくなります。

  8. ゴミ箱アイコン([Clear] ボタン)をクリックし、記録されたログを削除します。ログを削除すると左下に No events (capture disabled) と表示されています。

  9. メニューの[Options]–[Enable Boot Logging] をクリックし、次回のOS起動からログ採取をスタートする設定をします。

  10. 以下のダイアログで、[Generate thread profiling events] のチェックは不要なのでそのまま [OK] をクリックします。

  11. Procmon64.exe を終了し、OS を再起動します。OS 起動からログ採取が自動的開始されます。

  12. OS が再起動したらログインし、Procmon64.exe を実行します。

  13. 以下のダイアログが表示されるので、[はい] をクリックし、ログを保存します。デフォルトでは、Bootlog.pml というファイル名となり、任意の場所に保存できます。

    [補足: シャットダウン時のログが取りたい場合]
    シャットダウン時のログが取りたい場合は、上記の手順12. でログインした後、Procmon64.exe を実行せず、そのままOSを再起動します。その再起動後に、Procmon64.exe を実行し、ログを保存します。

Process Monitor ログ解析

  1. 漏斗アイコン([Filter] ボタン)をクリックし、フィルターを設定します。

  2. [Path-contains-ファイルまたはレジストリパス]を設定し、Add ボタンをクリックし、フィルターに追加します。

  3. OKボタンをクリックして、フィルター設定を完了します。

  4. フィルター結果からアクセスしたプロセスを確認します。 以下の例では、エクスプローラーやメモ帳が test.txt にアクセスしていたことが確認できます。

本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。