ドライブとデバイス

UNIX では、 "デバイス" ということばは、コンピュータにつながった周辺機器すべてを指す。たとえばハードディスク、フロッピー、 CD-ROM ドライブ、サウンドカードやビデオカード、シリアルポートやパラレルポートなどなど。それぞれのデバイスには /dev/hda みたいな名前がついてる。いちばんよく出てくるデバイス目を以下に挙げる (これは Linux 用だ。ほかの UNIX は、ちょっとちがったデバイス名を使っているかもしれない)。

Note メモ
 

IDE とか SCSI とかいう略称が目新しい人のために、ちょっと説明。ハードドライブなんかのインターフェースには二種類ある。IDE (そしてその兄弟分の EIDE, ATAPI, など) と SCSIだ。SCSI のほうがパフォーマンスは高いけれど値段も張るので、主にサーバに使われる。自分のドライブがわからなければ、たぶんそれは IDE だろう。

さらに、 /dev/floppy, /dev/modem /dev/cdrom といったシンボリックリンクが、実際にそれぞれフロッピードライブやモデムや CD-ROM ドライブに対応したデバイス名に張られていることが多い。

こういうデバイス名を使わなきゃいけないことはほとんどない。特にドライブ状のファイルにアクセスしたいときでも、デバイス名 (たとえば /dev/fd0 )は使わない。むしろ、まずそのデバイスをマウントして、その中身がメインディレクトリ・ツリーのサブディレクトリとして表示されるようにする (たとえば /mnt/floppy )。そしてそのディレクトリを使ってファイルにアクセスするのだ。詳しくは ドライブのマウント/アンマウント の節 を参照。実際にデバイス名を使うことになるほとんど唯一の場合というのは、新規にインストールしたプログラムの設定のときだ。たとえば、ファックスソフトは、ファックスモデムのデバイス名をきいてくるかもしれない(この場合には、 /dev/ttyS1 みたいな実際のデバイス名を入れるか、あるいは /dev/modem みたいなシムリンクを使ってもいい)。

それと、お楽しみ: /dev/null というファイルがあって、これは "ブラックホール" みたいなものだ。ここにどんな情報を送っても、二度と戻ってこない。だからエラーメッセージがうざいと思ったら、それを /dev/null にリダイレクトしちゃおう -:)。

パーティション

ハードディスク(またはその手のデバイス)は、物理的には同じディスク上にあっても、実質的に別々のディスクとしてふるまう部分に分割してやれる。こういう部分を "パーティション" と呼ぶ (Windows だと "論理ディスク" という言い方をする)。たとえば、ハードディスクをいくつかに区切って、それぞれに別のオペレーティングシステムを入れることもできる。それぞれのパーティションを別々にフォーマットできる。ハードドライブのパーティションを切るのは、ふつうはオペレーティングシステムのインストール時にやる。詳しくはインストールガイドを参照のこと。

ハードドライブがパーティションに切られていたら、それぞれのパーティションは別々のドライブと見なされる。たとえばハードドライブが /dev/hda なら、このドライブの最初のパーティションは /dev/hda1 になるし、二番目は /dev/hda2 等々、というわけ。

Warning ZIP ディスクのパーティション切り
 

どういうわけかわからないんだけれど、お店で売ってるフォーマット済みの ZIP ディスクや、ウィンドウズで Iomegaの ZIPツールを使ってフォーマットした ZIP ディスクは、変なふうにパーティションされている。パーティションは一つしかなくて(もちろんウィンドウズ用)、それなのにこのパーティションは4番になってる。だから ZIP ドライブが /dev/hdc なら、こういうディスクで使うべき正確なデバイス名は /dev/hdc4 になる。