USBメモリ活用講座
【基礎編・USBメモリの準備 (補足情報)】

< 最終更新日: 2017-09-06 >

format コマンドで USB メモリをフォーマットする方法

ファイルシステムやクラスタサイズを自分で指定してフォーマットを行いたい場合には,「コマンドプロンプト」を開いてディスクの初期化(フォーマット)コマンドである format を利用する方が確実かもしれません. まずは,format コマンドのオンラインヘルプで /FS オプションや /A オプションの項を調べましょう.

format /? | more

/A オプションに関する説明では,FAT32 のクラスタ数の制限が「65,526<クラスタ数<4,177,918」と書いてあるはずです. これは,大雑把な見積もりとしては (USB メモリの容量)÷(クラスタサイズ) を計算して得られる数値が,65,526 より大きく,4,177,918 未満であれば,そのクラスタサイズでフォーマットすることができることを意味します. あるいは,(USBメモリの容量)÷4,177,918<(クラスタサイズ)<(USBメモリの容量)÷65,526 の範囲で適切なクラスタサイズを選ぶことができるともいえます.

例えば 256MB の USB メモリ (USB256) を標準的な FAT32 でフォーマットしたとき,クラスタサイズは 2,048 バイト,クラスタ数は 127,358個 となります. 2 つの数値を掛け合わせると,2,048×127.358=260,829,184Byte≈249×220Byte=249MB となり,おおよそ USB メモリの容量 (256MB) に近い数値となっていることがわかります. 不足分の約 7MB (=256-249) は,どのクラスタに何というファイルが格納されるかといった見出し情報を記憶するテーブルなどに利用されます.

USB256 の場合,256×220÷4,177,918≈64,256×220÷65,526≈4096 ですから,64<(クラスタサイズ)<4096 となるクラスタサイズを指定できることになります. FAT32 で指定可能なクラスタサイズは 512,1024,2048,4096,8192,16K,32K,64K ですので,512,1024,2048 のどれかを選ぶことになります (4096 は試してみなければわかりません). 例えば,U:ドライブをクラスタサイズ 512 バイト,FAT32 でフォーマットするには,次のコマンドを実行します.

format U: /FS:FAT32 /A:512

USB256 をクラスタサイズの指定を変えて,FAT32 でフォーマットした結果を表1に示します. クラスタサイズ 4096 でのフォーマットも試してみましたが「指定されたクラスタサイズは FAT32 には大きすぎます」と表示され,フォーマットを実行することができませんでした.

表1・クラスタサイズとクラスタ数 (容量256MB, FAT32)
クラスタサイズ クラスタ数 クラスタサイズ×クラスタ数(全ディスク領域)
512 503,552 257,818,624Byte≈246×220Byte=246MB
1024 253,728 259,817,472Byte≈248×220Byte=248MB
2048 127,358 260,829,184Byte≈249×220Byte=249MB

表1を見ると,クラスタサイズを小さくして,クラスタ数を増やすほどディスク領域が小さくなることがわかります. クラスタ数が増えれば,見出し情報を記憶するテーブルも大きくしなければならないので,当然の結果です.

ここでは説明のためにあれこれと試しましたが,FAT32 でフォーマットする場合には,標準のクラスタサイズで使用することを推奨します.

NTFS 利用時の注意 (Windows 8 以降)

Microsoft TechNet に掲載されている Windows 8 volume compatibility considerations with prior versions of Windows という英文記事によれば,Windows 8/8.1/10 では,起動時間を短縮するために Windows 7 以前とは異なる電源管理を採用しており,(通常の) シャットダウンと完全シャットダウンの 2 段階の終了方法が用意されています. Windows 7 以前のシャットダウンに相当するのが,完全シャットダウンで,PC にメモリや HDD (Hard Disk Drive) を増設するといったハードウェア変更を加える際には,必ず完全シャットダウンしなければなりません. これに伴い,システムドライブのファイルシステムとして利用される NTFS にも変更が加わり,動作状況などを記録する log file のバージョンが,それ以前の LFS 1.1 から新しく LFS 2.0 に変わりました.

LFS 1.1 の NTFS ドライブ (ボリューム) を Windows 8 以降の PC に接続すると,デフォルトの動作では自動的に LFS 2.0 への変換が行われます. ところが,LFS 2.0 は LFS 1.1 と互換性がないため,LFS 2.0 の NTFS ドライブ (ボリューム) を Windows 7 以前の PC に接続すると,障害のあるドライブ (ボリューム) と認識されてしまい,最悪の場合 HDD 内の情報が失われかねないという危険性があるのです.

PC を完全シャットダウンするか,リムーバブルメディアの安全な取り外し操作を行えば,LFS は 1.1 に戻されるので,問題は発生しません. 従って,Windows 8/8.1/10 に NTFS フォーマットされた USB ドライブを接続する場合は,シャットダウンする前に,必ず取り外し操作が必要であると覚えておきましょう※1

Windows XP 関連

以下に掲載する情報のいくつかは,2014 年 4 月 9 日 で Microsoft によるサポート期間が終了した Windows XP 向けのものですが,参考として残してあります. セキュリティの観点から Windows XP を使い続けることは推奨できませんので,現在も XP をお使いの方は早急に,より新しい環境へ移行することをご検討ください.

USB メモリを NTFS でフォーマットする方法 (Windows XP)

図1・USBドライブのプロパティ
図1・USB ドライブのプロパティ

Windows XP で USB メモリを NTFS フォーマットしたい場合には,予め操作を行う必要があります.

  1. デスクトップの [マイコンピュータ] アイコンを右クリックして,表示されるメニューから [プロパティ] をクリックして,「システムのプロパティ」ダイアログボックスを表示させます ([コントロールパネル]-[システム] でも同じ操作が可能です).
  2. 「ハードウェア」タブの「デバイスマネージャ」をクリックします.
  3. 「ディスクドライブ」から USB メモリに該当するドライブを見つけ,ダブルクリックします.
  4. USB ドライブのプロパティのダイアログボックスが表示されるので,「ポリシー」タブを開きます (図1).
  5. 「クイック削除のために最適化する」と「パフォーマンスのために最適化する」の 2 項目が選択できるラジオボタンがあるはずですので,「パフォーマンスのために最適化する」を選んで,[OK] ボタンをクリックします.

これでフォーマットダイアログボックスを開いたときに,ファイルシステムとして NTFS が選択できるようになるはずです.

警告:図1で設定を変更する前に,説明をよく読んで内容を理解するように努めましょう. 安全な取り外しを確実に行わないと USB メモリ内のファイルシステムを破損してしまう場合があります.

exFAT の利用法 (Windows XP)

exFAT は Windows Vista SP1 から導入されたファイルフォーマットです. ReadyBoost が利用できないようですが,次のような優れた特長があり,SDXC メモリカードのファイルシステムとして採用されています.

ただし,exFAT は Windows 2000 では使用できません. また,Windows XP で使用する場合には更新プログラム KB955704 をインストールして,システムを再起動する必要があります.

exFAT で 256MB~32GB のドライブで標準として指定されるクラスタサイズが 32KB と大きく,FAT と同様に小さなファイルをたくさん保存する場合にムダが生じます. クラスタサイズを指定して,フォーマットするにはコマンドプロンプトから format コマンドを利用します. 例えば,U:ドライブをクラスタサイズ 4096 バイトでフォーマットするには,次のコマンドを実行します.

format U: /FS:exFAT /A:4096