新・闘わないプログラマ No.354

やっぱりFAT32?


先々週、USB接続の大容量ハードディスクにFAT32パーティションを作成するときのドタバタを書いたのですが、それに関して幾人かの方から情報をいただきました。私がやった力技に頼らずとも、いくつか方法はありそうです。「金で解決」という方法がもしかしたら一番ラクなのかも知れませんが、ここでは金を使わない方法を、いただいた情報をもとにいくつか紹介します。

まず、先日「Windows 98のfdiskのバグで64GB(?)以上のディスクはうまく扱えない」という件です。これについていは、Microsoftの技術情報に「Fdiskで64GBを超えるハードディスクのフルサイズが認識されない」という文書がありまして、そこを見るとどうやら修正版が出ているようです。
という情報だけではなんですので、実際に修正版を使ってみました。まず、修正前のバグあり版のfdiskで、120GBのパーティションを表示してみたところです。

 │                               領域情報を表示
 │
 │   現在のハードディスク: 3
 │
 │   領域       状態     種類 ボリュームラベル Mバイト システム   使用
 │    F: 1              PRI DOS                52253   UNKNOWN    100%
 │
 │
 │
 │
 │   ディスクの総容量は 52253 Mバイトです. (1 Mバイト=1048576 バイト)

このバグあり版では、実際の容量より65536MB(の整数倍?)を引いた値になります。次に修正後のfdiskです。

 │                               領域情報を表示
 │
 │   現在のハードディスク: 3
 │
 │   領域       状態     種類 ボリュームラベル Mバイト システム   使用
 │    F: 1              PRI DOS                11778   9UNKNOWN    100
 │    %
 │
 │
 │
 │   ディスクの総容量は 11778 Mバイトです. (1 Mバイト=1048576 バイト)

こんな感じで、ちゃんと120GB弱の容量になってい……ないやん、これ。11GBにしかなってないぞ。あははは、表示の桁数が溢れちゃってるようです。「システム」のところの「9UNKNOWN」の「9」ってのがなにやら怪しげです。
どうやら、ディスク容量を表示する部分の桁数を5桁しか取っていないようで、上の「Mバイト」のところでは最後の一桁が「システム」のところに追い出されてしまっているようですし、「ディスクの総容量」のところでは最後の一桁がどっかに行ってしまって表示されていません。実際には「117789MB」と表示したかったのでしょう。
これって手抜きプログラムの見本のようなやつですね。私もプログラムを作っていてよくやりました、こういう手抜き。「100GB以上のディスクだあ? んなもん、何百年経ったって出てこないって。ディスク容量の最大は5桁で充分だってば」とかなんとか……。

というわけでWindows 98のfdiskはいまいち、という結論に達したわけで、さて、それではどうしましょうか。結局のところWindows XPなりで32GB以上のパーティションをFAT32でフォーマットできればいいわけでして、そういうことのできるソフト(フォーマッタ)があればいい、ということですね。売り物の製品ではいろいろありますが「タダで」ということになりますと、頂いた情報ではメルコ……じゃなくてバッファローのDisk Formatterというソフトが使えるらしいです。
しかし、コレ。やっぱり自社製品以外のドライブをフォーマットするのに使うのはライセンス上問題があったりするかも、と確かめてみたのですが、それらしき記述は見つかりませんでした(←私が見逃しているだけかも)。「対象製品 弊社製 IDE HDD、IEEE1394 HDD、USB HDD、SCSI HDD」という記述はありますから他社製品に使うのはダメのような気もしますし、でもここは単に動作保障製品を列挙しているに過ぎないような気もしなくもないですし……ううむ。
アイ・オー・データにも似たようなフォーマッタがあるようですが、こちらは製品のシリアル番号を入力しないとダウンロードページに飛べないようになっていました。
と、そのへんのところは、ごにょごにょ……で、バッファローのDisk Formatterを一応試用してみました。ディスク全体のサイズの論理ドライブを作成して、それをFAT32でフォーマットするくらいの機能しか無さそうですが、あまりにも簡単に120GB弱のFAT32パーティションができてしまいました。ううむ、先々週のドタバタはなんだったんだろう?

ということで、頂いた情報へのお礼のお返事も兼ねて書いてみました。メールをくれた皆さん、情報どうもありがとうございました。
いや、本当は直接お礼をしないといけないのでしょうけど、いまでむちゃくちゃ忙しくて、メールを書いている暇がなかなか取れなかったりするわけで(←単なる言い訳です)、すみません。

[前へ] [次へ]

[Home] [戻る]


mailto:lepton@amy.hi-ho.ne.jp