この章では、ボリューム管理が取り外し可能な媒体を格納するために作成するマウントポイントとシンボリックリンクについて説明します。
この章で説明する手順は次のとおりです。
ボリューム管理は、/vol/dev の下にあるすべての CD-ROM とフロッピーディスクのドライブへのアクセスを提供します。
ボリューム管理は、/vol/dev のサブディレクトリ、つまり diskette0 と rdiskette0 から、システムのフロッピーディスクドライブへのアクセスを提供します。
システムに 2 番目のフロッピーディスクドライブがある場合、ボリューム管理は、diskette1 と rdiskette1 という 2 番目の対のディレクトリを作成します。3 つ目のフロッピーディスクドライブの場合は、diskette2 と rdiskette2 という対が作成されます。ドライブが追加されるたびに、同様に対のディレクトリが作成されます。
diskette ディレクトリからはファイルシステムに、rdiskette ディレクトリからは raw データに、それぞれアクセスできます。フロッピーディスク自体は、ドライブディレクトリの下にあるサブディレクトリに示されます。 [ この章の図では、ノードのいくつかは説明をわかりやすくするためにグレーで示されています。これは構造上の違いを示すものではありません。]
CD の場合は、フロッピーディスクの場合と似ていますが、ブロックディレクトリと raw ディレクトリにそれぞれ /dsk および /rdsk という名前が付けられている点が異なります。また、CD-ROM デバイスは、実際にはこれらよりも 1 つ下のディレクトリにあります。
上記の図では、そのディレクトリは c0t6 と命名されています。これは、特定システムのデバイス命名規則を反映しています。このため、使用するシステムによっては、ディレクトリが同じ形式であってもディレクトリ名が異なる場合があります。
ただし、CD 自体は、それらのデバイスに属するディレクトリの下にマウントされるという点で、フロッピーディスクと似た規則に従っています。
したがって、1 つのフロッピーディスクドライブと 1 つの CD-ROM ドライブを備えたシステムの /vol/dev ファイルシステムは、次のようになります。
(実際には、/vol/dev には、aliases という名前のサブディレクトリが含まれますが、これについては後で説明します。)
アクセスをより容易にするために、ボリューム管理は、/floppy および /cdrom という 2 つの特殊なマウントポイントを使用します。
ボリューム管理は、/vol/dev/diskette0 および /vol/dev/dsk/c0t6 というディレクトリを、/floppy および /cdrom にマウントします。
これらのマウントポイントがあるため、フロッピーディスクを挿入すると、/floppy/diskette-name によりアクセスできます。同様に、CD を挿入すると、/cdrom/cd-name によりアクセスできます。
ただし、これらのマウントポイントは、適切なフォーマットが必要です。フロッピーディスクがフォーマットされていればマウントは成功しますが、フォーマットされていないと、マウントは失敗して、フロッピーディスクは /vol/dev/diskette0 でしか使用できません。フロッピーディスクは、「UFS フロッピーディスクをフォーマットする方法」または 「DOS フロッピーディスクをフォーマットする方法」の説明に従ってフォーマットできます。
システムに複数のドライブがある場合は、/floppy/floppy0、 /floppy/floppy1、 /cdrom/cdrom0 などの並列のディレクトリにマウントされます。
ボリューム管理は、さらに次の 2 つの個別のシンボリックリンクセットを作成します。
ファイルシステムアクセス用
raw デバイスアクセス用
ファイルシステムアクセス用のシンボリックリンクは、ディレクトリ /floppy/floppy0 と /cdrom/cdrom0 を、最初のフロッピーディスクドライブに挿入されたフロッピーディスクと、最初の CD-ROM ドライブに挿入された CD にリンクします。
/floppy/floppy0 --> /floppy/name --> /vol/dev/diskette0/name
/cdrom/cdrom0 --> /cdrom/name --> /vol/dev/dsk/c0t6/CD-name
これらのリンクを使用すると、名前を知らないフロッピーディスクや CD にアクセスすることができます。リンク名 floppy0 または cdrom0 を名前の代わりに使用できます。
後続のドライブに挿入されたフロッピーディスクと CD は、表 11-3 に要約した命名規則に従います。
raw デバイスへのアクセスをさらに容易にするために、ボリューム管理は、/vol/dev の下に aliases ディレクトリを作成します。
ボリューム管理は、aliases ディレクトリの下に、ブロック型アクセス用に使用されるものに似たシンボリックリンクのセットを作成します。つまり、raw データをアクセスする場合、これらのディレクトリは同等にあつかえます。
/vol/dev/aliases/floppy0 --> /vol/dev/rdiskette0/diskette-name
/vol/dev/aliases/cdrom0 --> /vol/dev/rdsk/c0t6d0/cd-name
ファイルシステムアクセス用シンボリックリンクと同様、これらのリンクの目的は、raw データフロッピーディスクまたは CD の名前を知らなくても、アクセスできるようにすることにあります。つまり、/vol/dev/aliases/floppy0 および /vol/dev/aliases/cdrom0 の各リンク名を使用します。
上記の例は、フロッピーディスク用と CD 用にそれぞれ 1 つずつシンボリックリンクがある場合を示しています。システムに 2 つのフロッピーディスクまたは 2 つの CD がある場合は、次に示すように、それぞれに 1 つずつシンボリックリンクが作成されます。
UFS フォーマットは、アーキテクチャが異なると互換性がないため、それらがフォーマットされたアーキテクチャ上で使用する必要があります。たとえば、SPARC システム用にフォーマットされた UFS CD は、x86 システムでは認識されません。 同様に、 x86 UFS CD は、ボリューム管理によって SPARC システム上にマウントすることはできません。同じ制限が、フロッピーディスクにもあてはまります。
したがって、ボリューム管理は、SPARC システム上の x86 UFS 媒体を認識してマウントすることはできません。また、x86 システム上の SPARC UFS 媒体も認識できません。
ほとんどの CD は、ISO 9660 標準 (High Sierra File System - HSFS) に従ってフォーマットされます。これは、ボリューム管理をまったく制限しないため、 CD において互換性が問題になることはほとんどありません。
フロッピーディスクの場合、UFS の互換性の問題は、CD の場合よりも頻繁に起こる可能性があります。これは、ユーザーがフォーマットを設定できるためです。あるアーキテクチャで UFS フロッピーディスクをフォーマットした場合、それを別のアーキテクチャでは使用できないことに注意してください。 (「UFS フロッピーディスクをフォーマットする方法」を参照してください。)
いくつかの CD、特にインストール用 CD には、混合フォーマットが含まれます。つまり、一部が UFS で、一部 ISO 9660 です。異なるフォーマットを格納するために、CD は、実質的にハードディスクのパーティションに似たスライスに分割されます。9660 部分は移植可能ですが、UFS 部分はアーキテクチャに固有です。さらに、CD をいくつかの異なるアーキテクチャで使用できるようにするために (異なる PROM アーキテクチャがシステムのブートに使用される可能性のあるインストールの場合などのために)、複数の UFS フォーマットが CD にロードされます。
この場合ボリューム管理は、ローカルシステムのアーキテクチャに固有ではない UFS フォーマットを無視して、適切な UFS スライスと ISO 9660 スライスをマウントします。
これらのスライスは、サブディレクトリとして、/vol/dev/dsk/c0t6 と /cdrom/cdrom0 の両方の下に現れます。
$ ls /cdrom/cdrom0 S0 S2 $ ls /vol/dev/dsk/c0t6 S0 S2 |