【ノウハウ】
USN ジャーナルの操作方法を紹介します。
■ジャーナルの状態確認
C:\> fsutil usn queryjournal c:
■ジャーナルの削除
C:\> fsutil usn deletejournal /D C:
【構文】
fsutil usn [createjournal] m = <MaxSize> a = <AllocationDelta><VolumePath>
fsutil usn [deletejournal] {/D |/N} <VolumePath>
fsutil usn [enumdata] <FileRef><LowUSN><HighUSN><VolumePath>
fsutil usn [queryjournal] <VolumePath>
fsutil usn [readdata] <FileName>
【パラメータ】
パラメーター | 説明 |
---|---|
createjournal | USN 変更ジャーナルを作成します。 |
m=<MaxSize> | NTFS が変更ジャーナルに割り当てるバイトの最大サイズを指定します。 |
a = <AllocationDelta> | バイトを末尾に追加し、変更ジャーナルの先頭から削除されるメモリ割り当てサイズを指定します。 |
<VolumePath> | ドライブ文字 (コロンが後に続く) を指定します。 |
deletejournal | 削除またはアクティブな USN 変更ジャーナルを無効にします。*1 |
/d | アクティブな USN 変更ジャーナルを無効にし、変更ジャーナルが無効になっているときに、入出力 (I/O) のコントロールを返します。 |
/n | アクティブな USN 変更ジャーナルを無効に、だけ変更ジャーナルを無効にした後は、I/O 制御を戻します。 |
enumdata | 列挙し、指定した 2 つの境界の間の変更の履歴を一覧表示します。 |
<FileRef> | 列挙を開始すること、ボリューム上のファイル内の位置を表す序数を指定します。 |
<LowUSN> | 返されるレコードをフィルター処理するために使用、USN 値の範囲の下限を指定します。 最終変更ジャーナルの USN 間、 LowUSNとHighUSNメンバーの値に等しいかだけのレコードが返されます。 |
<HighUSN> | 返すファイルをフィルタ リングするために使用、USN 値の範囲の上限を指定します。 |
queryjournal | 現在の変更ジャーナル、レコード、および容量に関する情報を収集するのには、ボリュームの USN データを照会します。 |
readdata | ファイルの USN データを読み取ります。 |
<FileName> | たとえば、ファイル名と拡張子を含むファイルへの完全なパスを指定します C:\documents\filename.txt。 |
出典: https://technet.microsoft.com/ja-jp/library/cc788042(v=ws.10).aspx
【参考資料】
◆Windows コマンドプロンプト リファレンス FSUTIL (Maakun, 2008/09/10)
http://www.geocities.jp/maakun_gemini_ab/contents/pc/cmd_reference_fsutil.html
◆USN_RECORD_V2 structure (Microsoft)
https://msdn.microsoft.com/en-us/library/aa365722(VS.85).aspx
◆USN Journal
https://en.wikipedia.org/wiki/USN_Journal