2004年08月01日

FAT32で32GB以上のフォーマット

「NTSFでフォーマットしてしまった40GBのUSBハードディスクをFAT32に戻したいんだけれどフォーマット出来ない」という相談を受けてちょっと調べてみる。
  • Windows 2000/XP では FAT32 で 32GB を超えるフォーマットが出来ない
    読込みは問題ないそうだ。対策としては 32GB を超える場合、NTFS でフォーマットしろと。
    Windows 9x では FDISK にバグがあり HDD が 64 GB を超える場合、正しいサイズを認識出来ない
    JP263044 で patch が公開されています。Windows Me では修正済みとのこと。
    Windows 9x/Me では Format.exe の表示にバグがあり、 64 GB を超える場合、正しいサイズを表示出来ない。
    おかしいのは表示だけなので実働問題無し、との見解。なんだかなあ。
あぁ、あったあったそんな話。

対策としては書いてあるようにWin98かME(もしくはその起動ディスク)でフォーマットすればいいという事なんですが、MEは手元にはなくWin98ではUSB HDが正常に認識出来ない(;´д`)ノ

そこでKnoppixを使ってFAT32にフォーマットしてみました。

とりあえず、今回使ったKnoppixは焼くのが面倒だったので雑誌付録で3.4の日本語版

で、手順としては、まずKnoppix3.4でブートしてデスクトップまで出します。
次にターミナル(タスクバーっぽいところに並んでいるディスプレイに「>」が書いてある)アイコンをクリックしてターミナルを起動します。

で、出てきたら下記のコマンドでとりあえずrootになりましょう。

sudo su -
で、次に対象のUSB HDをおもむろにつなげます。

その後「dmesg」コマンドをたたくと最後の方に「sda」とか「sdb」とかsdとアルファベット一文字の計3文字がどこかに書いてあると思うので、それをメモってください。
(無い場合は、ちゃんと接続されて無いと思います(^^;)

で、次ですが、パーテーションも全部開放してしまって居たのでfdiskでパーテーションを着ることにします。

手順だけ書くと

(dmesgで調べた結果がsdaだった場合)
# fdisk /dev/sda
(fdisk上で)
「n」→「p」→Enter→Enter→「t」→「c」→「w」
という感じですが、fdiskはコマンドは適当にいじると痛い目見るかもしれませんので、そっくりマネをして既存のデータが全部消えても責任もてません(^^;
心配な方はこちらを良く読んでしっかり勉強することをおすすめします。

うまくいけば、基本パーテーションの1番として領域を全部使ったタイプがW95 FAT32(LBA)な領域が出来るはずです。

次に実際のFAT32へのフォーマット作業ですが、最初

# mkdosfs /dev/sda1
としてみたところ一瞬で終了して
mkdosfs: Attempting to create a too large file system
なるメッセージが。

「ん、出来たのかな?」と思って

# mount -f vfat /dev/sda1 /mnt
と試してみてもマウント出来ず。
やっぱり失敗ですか。
わかりにくいエラーメッセージだなぁ(^^;

ちなみに、これは同じバイナリを参照してる「mkfs.vfat」や「mkfs.msdos」でも一緒でした。
(そりゃそうだ(^^;)

にしても40GB程度で大きすぎるというのはおかしい。
規格上は

  • ファイルを 4byte の FAT で管理するため、論理的には 2TB (テラバイト、1TB=1024GB) まで管理することができます。
と2048GBまで対応しているはずですし。

それでmanを見てみたところ

-F FAT-size
       Specifies  the type of file allocation tables used (12, 16 or 32
       bit).  If  nothing  is  specified,  mkdosfs  will  automatically
       select  between  12  and  16  bit,  whatever fits better for the
       filesystem size.  32 bit FAT  (FAT32  format)  must  (still)  be
       selected explicitly if you want it.
これが怪しいなぁ。

なので

# mkdosfs -F 32 /dev/sda1
としてみたところしばらく時間が掛かった後に無事フォーマット完了しました( ̄▽ ̄)ノ

にしてもKnoppix本当に便利だなぁ。
Windowsも最近SP2にかかりっきりで64bit化とか停滞気味だし、Knoppixがいつの間にか乗っ取る時代が来るかもしれません(笑)

2004年9月27日(月)
日本語がおかしかったので、いくつか修正しました(^^;

Posted by Takuchan at 2004年08月01日 00:33 | トラックバック(2)