15.6. フロッピーディスクの作成と使用

原作: Julio Merino. 改訂: Martin Karlsson.

フロッピーディスクにデータを格納することはしばしば役にたちます。 たとえば、ある人が他のリムーバブル記録メディアを何も持っていないときや、 小さなデータを他のコンピュータに移動させる必要があるときです。

この節では、FreeBSD におけるフロッピーディスクの使用方法を説明します。 主に 3.5 インチの DOS フロッピーのフォーマットと操作方法を扱いますが、 他のフロッピーディスクの形式についても概念は似ています。

15.6.1. フロッピーのフォーマット

15.6.1.1. デバイス

他のデバイスと同様に、フロッピーディスクは /dev にあるエントリを通じてアクセスされます。4.X およびそれ以前のリリースにおいて raw フロッピーディスクにアクセスするには /dev/fdN または /dev/fdNX を使用します。N はドライブ番号を表し、 大抵は 0 です。X は文字を表します。

5.0 およびそれ以降のリリースでは、単に /dev/fdN を使用します。

15.6.1.1.1. 4.X およびそれ以前のリリースでのディスクサイズ

/dev/fdN.size というデバイスもあります。 size はフロッピーディスクのサイズをキロバイトで示したものです。 これらのエントリは低レベルフォーマットの際に、 ディスクサイズを決定するのに使用されます。 1440kB は以下の例で使用されるサイズです。

時々 /dev 下のエントリは (再) 作成されなければなりません。次のコマンドでこれを行います。

# cd /dev && ./MAKEDEV "fd*"

15.6.1.1.2. 5.X およびそれ以降のリリースでのディスクサイズ

FreeBSD 5.0 では devfs(5)/dev 内のエントリを自動的に管理するので、 MAKEDEVを使用する必要はありません。

所望のディスクサイズは fdformat(1)-f フラグを通して渡されます。対応しているサイズは fdcontrol(8) のマニュアルページに掲載されていますが、最良に動作するのは 1440kB だと助言しておきます。

15.6.1.2. フォーマット

フロッピーディスクは、 使用前に低レベルフォーマットをする必要があります。 通常、ベンダは低レベルフォーマット済みのディスクを出荷していますが、 フォーマットはメディアの品質を確認するよい方法です。 より大きな (または小さな) ディスクサイズにすることも可能ですが、 ほとんどのフロッピーディスクのサイズは 1440kB で動作するように設計されています。

フロッピーディスクを低レベルフォーマットするには fdformat(1) を使用する必要があります。 このユーティリティは引数としてデバイス名を指定します。

ディスクが良好かあるいは不良であるかを決定するのに役立つので、 エラーメッセージをすべてメモに取っておいてください。

15.6.1.2.1. 4.X 以前のリリースでのフォーマット

/dev/fdN.size デバイスを使ってフロッピーをフォーマットします。 新しい 3.5 インチフロッピーディスクをドライブに挿入し、 以下のコマンドを実行してください。

# /usr/sbin/fdformat /dev/fd0.1440

15.6.1.2.2. 5.0 以降のリリースでのフォーマット

/dev/fdN デバイスを使用してフロッピーをフォーマットします。 新しい 3.5 インチフロッピーディスクをドライブに挿入し、 以下のコマンドを実行してください。

# /usr/sbin/fdformat -f 1440 /dev/fd0

15.6.2. ディスクラベル

ディスクを低レベルフォーマットしたら、 次にディスクラベルを作成する必要があります。 ディスクラベルは後で破棄されますが、 システムがディスクのサイズとジオメトリを決定するのに必要になります。

新しいディスクラベルはディスク全体を引き継ぎ、 フロッピーのジオメトリに関する適切な情報のすべてが含まれます。 ディスクラベルに対するジオメトリの値は /etc/disktab に掲載されています。

次のように disklabel(8) を実行できます。

# /sbin/disklabel -B -r -w /dev/fd0 fd1440

Note: FreeBSD 5.1-RELEASE から、従来の disklabel(8) プログラムは bsdlabel(8) ユーティリティに置き換えられました。bsdlabel(8) では、 使用されていないオプションおよびパラメタの数多くが削除されました。 たとえば -r オプションは bsdlabel(8) では取り除かれました。詳細については bsdlabel(8) マニュアルページを参照してください。

15.6.3. ファイルシステム

これでフロッピーを高レベルフォーマットする準備ができました。これは FreeBSD がディスクを読み書きする新しいファイルシステムを作成します。 新しいファイルシステムを作成するとディスクラベルは破棄されます。 したがって、ディスクを再フォーマットするときには、 ディスクラベルを再作成しなくてはなりません。

フロッピーのファイルシステムには UFS または FAT を使用できます。 フロッピーに対しては FAT が一般的によりよい選択です。

フロッピー上に新しいファイルシステムを作成するには次のようにします。

# /sbin/newfs_msdos /dev/fd0

これでディスクが使用できるようになりました。

15.6.4. フロッピーの使用

フロッピーを使用するために、mount_msdos(8) (4.X 以前のリリース) または mount_msdosfs(8) (5.0 以後のリリース) を用いてマウントします。 Ports Collection から emulators/mtools を使用することもできます。