fsutil - ファイルシステムを調べる・操作する

にメンテナンス済み
目次

fsutilコマンドは、NTFS などのファイルシステムの情報を調べたり、低レベルな操作を行ったりするコマンドです。ドライブの空き容量の確認、指定サイズのファイルの作成、ハードリンクの確認、ボリュームの状態確認など、通常のコマンドでは扱いにくい作業をまとめて行えます。

fsutilは、fsutilの後ろに「サブコマンド」と「さらに細かい指示」を続けて使います。

多くの操作は管理者権限が必要です

fsutilのサブコマンドの多くは、管理者として実行したコマンドプロンプトでないと「アクセスが拒否されました」などのエラーになります。本記事のサンプルも、管理者として実行したコマンドプロンプトで試してください。実行方法は関連記事を参照してください。

fsutilコマンドの基本構文

fsutil <サブコマンド> [<さらに細かい指示>] [<引数>]

主なサブコマンドは次のとおりです。

サブコマンドできること
volumeボリュームの空き容量の確認など
file指定サイズのファイルの作成など、ファイル単位の操作
hardlinkハードリンクの作成・一覧表示
dirtyボリュームの「ダーティ」状態の確認
fsinfoドライブの一覧、ボリュームやファイルシステムの情報
behaviorファイルシステムの動作設定の確認・変更

引数を付けずにfsutilだけを実行するか、fsutil <サブコマンド>のように続きを省略して実行すると、使い方の一覧が表示されます。

fsutil
fsutil file

ドライブの空き容量を確認する

fsutil volume diskfreeにドライブ名を付けると、そのドライブの空き容量をバイト単位で表示します。

fsutil volume diskfree C:
- □ ×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>fsutil volume diskfree C:
空きバイト総数 : 123,456,789,012
バイト総数 : 511,000,000,000
利用可能な空きバイト総数 : 123,456,789,012
C:\users\user>
表示内容は環境によって異なります

表示される項目名や、数値の区切り文字、項目の数は、Windows の表示言語やバージョンによって変わります。上の出力は一例です。

エクスプローラーの表示と違って、fsutilは GB ではなくバイト数をそのまま表示します。1 GB は 1,073,741,824 バイトなので、表示された数値を約 10 億で割ると、おおよその GB 数が分かります。

空き容量をバッチファイルで確認する

空き容量の数値は 32 ビット整数の上限(約 2 GB)を大きく超えるため、set /aでは計算できません。この用途では、PowerShell で計算するのが確実です。

diskfree.cmd
@echo off

rem C: の空き容量を GB 単位で表示する
powershell -NoProfile -Command "[math]::Round((Get-PSDrive C).Free / 1GB, 1)"

fsutilの出力は項目名が表示言語によって変わるため、バッチファイルで文字列として加工するのはおすすめしません。

空き容量だけなら dir でも確認できます

dirコマンドの最終行にも、そのフォルダーがあるドライブの空きバイト数が表示されます。管理者権限が不要で手軽なので、確認だけが目的ならdirでも十分です。

指定したサイズのダミーファイルを作成する

fsutil file createnewを使うと、指定したバイト数のファイルをすばやく作成できます。ファイルの中身はすべて 0(ヌル文字)で埋められます。

fsutil file createnew <ファイル名> <サイズ(バイト)>
1
fsutil file createnew dummy.bin 1048576
- □ ×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>fsutil file createnew dummy.bin 1048576
ファイル C:\work\dummy.bin が作成されました
C:\users\user>
おすすめ書籍※ 広告を含む場合があります
中小企業経営者のためのRPA入門 RPA導入を成功させる方法

中小企業経営者のためのRPA入門 RPA導入を成功させる方法

60分でわかる! AIエージェント 超入門

60分でわかる! AIエージェント 超入門

コマンドラインの黒い画面が怖いんです。

コマンドラインの黒い画面が怖いんです。

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

アップロードの上限サイズを試したいときや、空き容量が少ない状態を再現したいときなど、テスト用にサイズが決まったファイルが必要な場面で役立ちます。

作りたいサイズ指定するバイト数
1 KB1024
1 MB1048576
100 MB104857600
1 GB1073741824
既存のファイルは上書きされません

同名のファイルが既に存在する場合、fsutil file createnewはエラーになります。ファイルは上書きされないので、既存のファイルが壊れる心配はありません。

空のファイル(0 バイト)を作る方法は、関連記事を参照してください。

ハードリンクを調べる・作成する

ハードリンクとは、1 つのファイルの実体に、複数の名前(パス)を付ける仕組みです。fsutil hardlink listを使うと、指定したファイルに付いているすべての名前を確認できます。

fsutil hardlink list sample.txt
- □ ×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>fsutil hardlink list sample.txt
\work\sample.txt
\backup\sample-link.txt
C:\users\user>

パスはドライブ名を除いた形で表示され、同じボリューム上の名前だけが対象です。ハードリンクを作成するにはfsutil hardlink createを使います。

fsutil hardlink create <新しい名前> <既存のファイル>
fsutil hardlink create C:\backup\sample-link.txt C:\work\sample.txt
mklink /H でも作成できます

ハードリンクの作成だけなら、mklink /Hでも同じことができます。mklinkではシンボリックリンクやジャンクションも作成できます。詳しくは関連記事を参照してください。ハードリンクは同じ NTFS ボリューム内でしか作成できません。

ボリュームの状態を確認する(dirty)

fsutil dirty queryは、ドライブがダーティ(不整合の疑いがある)状態かどうかを確認します。強制終了や停電などでファイルシステムが正常に閉じられなかった場合に、ダーティ状態になります。

fsutil dirty query C:
- □ ×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>fsutil dirty query C:
ボリューム - C: はダーティではありません
C:\users\user>

ダーティになっているドライブは、次回の起動時などに自動でチェックされます。手動でチェックしたいときは、chkdskを使います。

ドライブの一覧やボリュームの情報を表示する

fsutil fsinfoでは、接続されているドライブやボリュームの詳細を確認できます。

ドライブの一覧を表示する
fsutil fsinfo drives
ボリュームの情報(ファイルシステム名やボリューム名など)を表示する
fsutil fsinfo volumeinfo C:
NTFS
fsutil fsinfo ntfsinfo C:

ntfsinfoは、クラスターあたりのバイト数など、NTFS の内部情報を確認したいときに使います。

ファイルシステムの設定を確認する(behavior)

fsutil behavior queryでは、ファイルシステムの動作設定を確認できます。

最終アクセス日時の更新設定を確認する
fsutil behavior query disablelastaccess
8.3
fsutil behavior query disable8dot3
設定の変更は慎重に

fsutil behavior setで設定を変更すると、システム全体の動作に影響します。多くの設定は再起動後に反映されます。確認(query)だけなら安全ですが、変更する場合は内容を理解したうえで行い、可能であれば事前に復元ポイントを作成しておきましょう。

まとめ

やりたいことコマンド
ドライブの空き容量を確認するfsutil volume diskfree C:
指定サイズのダミーファイルを作るfsutil file createnew dummy.bin 1048576
ハードリンクの一覧を表示するfsutil hardlink list sample.txt
ハードリンクを作成するfsutil hardlink create 新しい名前 既存のファイル
ダーティ状態を確認するfsutil dirty query C:
ドライブの一覧を表示するfsutil fsinfo drives
ボリュームの詳細を表示するfsutil fsinfo volumeinfo C:

関連記事

練習問題

練習問題

1 MB(1,048,576 バイト)のダミーファイル dummy.bin を作成するコマンドはどれでしょうか?

正しいものを 1 つ選んでください。

  1. fsutil volume diskfree dummy.bin 1048576
  2. fsutil file createnew dummy.bin 1048576
  3. fsutil hardlink create dummy.bin 1048576

練習問題

fsutil file createnew で、既に存在するファイル名を指定した場合の動作として正しいものはどれでしょうか?

正しいものを 1 つ選んでください。

  1. 既存のファイルが指定サイズで上書きされる
  2. エラーになり、既存のファイルは上書きされない
  3. 自動的に別の名前が付けられて作成される
#コマンドプロンプト #バッチファイル #コマンドライン #コマンド #ファイルシステム #ディスク #管理者権限