4 インストール方法

この章の目次へ

Linux に CD-ROM ドライブを接続するためには、次に示す作業が必要です。

  1. ハードウェアの接続
  2. Linux カーネルの設定の変更と、再構築
  3. 必要なデバイスファイルの作成と起動時のパラメータの設定
  4. 新しいカーネルでの再起動
  5. CD-ROM のマウント
次節でこの方法を詳しく説明します。

4.1 ハードウェアの接続

附属の説明書の通りに CD-ROM ドライブを接続してください。ドライブが内蔵 型か外付けか、またインターフェイスの種類などによって、接続方法は異なり ます。ハードウェアの接続に関しては、特に Linux ゆえに注意しなくてはな らない事はありません。ドライブとインターフェイスカードのジャンパスイッ チを設定する必要がある場合があります。そのドライブに適切なドライバに含 まれる README ファイルを読むと参考になるでしょう。

例えば README.ide に書いてあるように、IDE デバイスが1台だけの時には ATAPI CD-ROM のジャンパースイッチは slave ではなく single または master に設定しなくてはなりません。

4.2 カーネルの設定変更と再構築

Linux を最初に CD-ROM からインストールするためには、附属してくる起動ディ スクを使わなくてはなりません。可能ならば、CD-ROM の種類に合わせたドラ イバが含まれたディスクを選ぶ必要があります。もしも適切な起動ディスクが 見つからなければ、他の方法があります。

  1. ネットワーク経由でインストール
  2. DOS を起動し、CD-ROM の内容をハードディスクにコピーしてからイン ストール
  3. DOS を起動し、インストール用のフロッピーディスクを作る
  4. すでに Linux を使っている人に頼んで、適切なドライバを含んだブー トディスクを作ってもらう。

Linux Installation HOWTO http://www.gee.kyoto-u.ac.jp/LDP/HOWTO/Installation-HOWTO.html にはイ ンストールに関するさらに詳しい情報が載っています。Linux の入った CD-ROM を買った場合には、小冊子やテキストファイルの形でインストール方 法の解説がついていると思いますので、それを参考にしましょう。

Linux を一度インストールしてしまえば、大抵はカーネルを自分の環境に合わ せてコンパイルし直した方がいいでしょう。その理由は、

Linux Kernel HOWTO http://www.gee.kyoto-u.ac.jp/LDP/HOWTO/Kernel-HOWTO.html にはこのカー ネルの再構築について詳しく述べてあるはずです。ここでは CD-ROM に関係し たことだけを説明します。

もちろん、CD-ROM を使うためには make config をした後、コンパイルし直さ なくてはなりません。

ATAPI CD-ROM ドライブを持っている場合、次の質問に yes と答えなくてはな りません。

    "Normal (MFM/RLL) disk and IDE disk/cdrom support?"
    "Include support for IDE/ATAPI CDROMs?"

SCSI の CD-ROM ドライブの場合は、次の質問に yes と答えます。

     SCSI support?
     SCSI CDROM support?

また SCSI カードに合わせて次のような質問に正しく答えなくてはなりませ ん。たとえば AHA-1542 を持っていれば、

     Adaptec AHA1542 support?

に yes と答えます。

独自インターフェイスを持つドライブの場合、適切なドライバを使うようにし てください。前に示した表を参考にどのドライバを使うかを見つけてください。

また全ての CD-ROM は ISO-9660 ファイルシステムを使うはずです。そこで

     ISO9660 cdrom filesystem support?

に yes と答えます。

CD-ROM には関係ありませんが、ついでに(持っているならば)サウンドカー ドの設定をしておいた方がいいでしょう。 Sound-HOWTO が助けに なるでしょう。

設定が終ったら、手順にしたがってカーネルをコンパイルして、インストール してください。デバイスファイルや起動時のパラメータを設定するまでは、あ わてて再起動してはいけません。

CD-ROM のドライバにはカーネル・モジュールとして組み込めるものもたくさ んあります。これは Kernel HOWTO を参考に組み込んでください。

もしもあなたの持っているドライブがカーネルでサポートされていなかったら、 もっと新しいカーネルを使ってみる必要があるでしょう。(1.3.x でしかサポー トされていないドライバもあります。)

また、ドライバがカーネルとは別に配布されている場合もあります。これはカー ネルのソースコードににパッチを当てて使用します。これもやはり Kernel HOWTO を参考にしてください。

4.3 デバイスファイルの作成と起動パラメータの設定

カーネルはどのデバイスドライバを使うかを判断するために、 デバイスファ イルを使用します。通常の Linux のパッケージ(Slackware, Debian など) を使っている場合には、インストール時に必要なデバイスファイルが作成され ているはずです。例えば Slackware の場合、メニュー形式の設定ツールがつ いています。またほとんどのシステムでは /dev/MAKEDEV というス クリプトがついているはずです。この節に書いてあることを手動で実行するこ ともできます。どの方法を使うにしても、この節に書いてあること参考に、デ バイスファイルを確認しておくことをお奨めします。

デバイスファイルを作るには、ドライブの種類に合わせてシェルコマンドを使 います。この作業をするには、おそらく root になる必要があるでしょう。 Linux のパッケージによってはここに示したのとは異なる名前の CD-ROM のデ バイスファイルを使っていることがありますので、注意してください。

CD-ROM のデバイス名には、覚えやすい名前のシンボリック・リンクを張る ことをお奨めします。例えばパナソニックの CD-ROM に次のようにしてリン クを張ります。

    % ln -s /dev/sbpcd /dev/cdrom

音楽用 CD を使いたい場合は一般のユーザーがデバイスファイルに対して読 み書きができるように設定する必要があります。例えば次のようにします。

    % chmod 666 /dev/sbpcd
    % ls -l /dev/sbpcd
    brw-rw-rw-   1 root     disk      25,   0 Jul 18  1994 /dev/sbpcd

Linux 起動時に、デバイスドライバは適切なデバイスが存在するかを(普通は 特定のメモリのアドレスを見ることで)確認しようとします。多くのドライバ は複数のアドレスを探しますが、設定の違いによって、デバイス同士が同じア ドレスを使おうとして衝突したり、ハードウェアの制限などの問題から、デバ イスが使用するメモリアドレスを指定することが必要な場合があります。メモ リアドレスだけでなく、ほかのパラメーターなども含めて、ほとんどのドライ バでは起動時にブートローダーによってこの指定をすることができます。LILO の場合、 /etc/lilo.conf ファイルに

    append = "sbpcd=0x230,SoundBlaster"

を書き加えます。LXboot の場合には /.LXbootrc に

    /zImage -f ro spbcd=0x230,SoundBlaster ro

などとします。詳しくはそれぞれのブートローダーの説明書を見てください。

次節ではそれぞれのデバイスドライバについて特に注意しなくてはならないこ と、例えばデバイスファイルや起動時のパラメータやドライバの違いなどを述 べます。この節は、自分が持っているドライブの項目のみ読めば充分です。

(訳注:この節で、ドライバの説明として出てくる表の項目の、わかりにくい ものを簡単に説明します。「複数のドライブ接続」は、1枚のカードに複数台 のドライブを接続できるかどうかを示します。「音楽データ読み出し」はデー タの読み出しの可・不可であり、音楽CDが演奏できるかどうかではありませ ん。「カーネル設定オプション」はカーネルの make config の時に出てくる メッセージのことです。)

Sbpcd Driver

        原作者: Eberhard Moenkeberg (emoenke@gwdg.de)
   マルチセッション: 可 (CD-52x ドライブ以外)
  複数のドライブ接続: 可
ドライバのモジュール化: 可
  音楽データ読みとり: 可 (CR-562 と CR-563 のみ)
  ドライブの自動認識: 可
   デバイスファイル: /dev/sbpcd, メジャー番号 25
     設定ファイル: sbpcd.h
カーネル設定オプション: Matsushita/Panasonic CDROM support?
    README ファイル: README.sbpcd

このドライバは次のようなカーネルコマンドラインを受けとります。

    sbpcd=<I/O アドレス>,<インターフェイスの種類>

最初のパラメータはデバイスのベースアドレス(たとえば 0x230)で、<イ ンターフェイスの種類> は "SoundBlaster", "LaserMate", "SPEA" のいず れかです。どのインターフェイスを使っているかのヒントは、 sbpcd.h を見 ると参考になるでしょう。sbpcd=0 を設定すると、自動認識をやめてドライバ を使わいようにします。

デバイスファイルはメジャー番号 25、マイナー番号0で、

    % mknod /dev/sbpcd b 25 0

のように作成します。

1つのインターフェイスカードに4台までのドライブが接続できます。2台目 からのドライブはマイナー番号が1から3までのデバイスを使用します。複数 のインターフェイスカードを使うこともできます。この時はメジャー番号が 25 のものに加えて 26, 27, 28 のデバイスを作れます。(つまり最大4枚の カードを使って 16台の CD-ROM ドライブが接続できるのです。これ以上つな ぎたいという人がいないことを祈ります :-)

更に詳しいことは README.spbcd を見てください。

SONY の CDU535 ドライバ

        原作者: Ken Pizzini (ken@halcyon.com)
   マルチセッション: 不可
 複数のドライブの接続: 不可
ドライバのモジュール化: 可
 音楽データの読みだし: 不可
       自動認識: 不可
   デバイスファイル: /dev/sonycd535, メジャー番号 24
     設定ファイル: sonycd535.h
カーネル設定オプション: Sony CDU535 CDROM support?
    README ファイル: README.sonycd535

このドライバはカーネルコマンドラインのオプションとして

    sonycd535=<I/O アドレス>

を受け付けます。 <I/O アドレス> はインターフェイスカードのベースアドレス(0x320 など)です。コンパイル前に sonycd535.h を書き換えることでも変更可能で す。

デバイスファイルは次のようにして作ることができます。

    % mknod /dev/sonycd535 b 24 0

Linux のパッケージによってはこのドライブのための /dev/sonycd というデバイスを持っているものもあります。このドライバの古いものはメジャー 番号が 21 になっているものがあります。あなたのデバイスファイルに正しい 番号 (24) が設定されているか確かめてください。

このドライバはかつてはパッチとして配布されていましたが、今では正式にカー ネルに含まれています。README.sonycd535 ファイルにはもっと詳しい情報が 書かれています。

CDU31A ドライバ

        原作者: Corey Minyard (minyard@wf-rch.cirr.com)
   マルチセッション: 可
  複数ドライブの接続: 不可
ドライバのモジュール化: 可
 音楽データの読みだし: 可
       自動認識: 不可
   デバイスファイル: /dev/cdu31a, メジャー番号 15
     設定ファイル: cdu31a.h
カーネル設定オプション: Sony CDU31A/CDU33A CDROM support?
    README ファイル: README.cdu31a

このドライバは次のカーネル・コマンドラインを受け付けます。

    cdu31a=<I/O アドレス>,<割り込み>,PAS

最初はカードの I/O アドレスです(0x340 など)。2つめは割り込み番号で す。(0は Polled I/O を使うことを示します。)3つ目の(なくても構わな い)パラメータは、Pro-Audio Spectrum をつないでいる時には "PAS" を指定 し、なければ何も書きません。

デバイスファイルは次のようにして作ります。

    % mknod /dev/cdu31a b 15 0

README.cdu31a には更に詳しい情報が書いてあります。

Jeffrey Oxenreider (zureal@infinet.com) さんの Web ページにはこのドラ イバを使う時に起こりそうな問題に触れてあります。 そのページは http://www.infinet.com/~zureal/cdu31a.html に あります。

Aztcd ドライバ

         原作者: Werner Zimmermann (zimmerma@rz.fht-esslingen.de)
   マルチセッション: 可
  複数ドライブの接続: 不可
ドライバのモジュール化: 可
 音楽データの読み出し: 不可
       自動認識: 不可
   デバイスファイル: /dev/aztcd0, major 29
     設定ファイル: aztcd.h
カーネル設定オプション: Aztech/Orchid/Okano/Wearnes (non IDE) CDROM support?
    README ファイル: README.aztcd

このドライバは次のカーネルコマンドラインを受け付けます。

    cdu31a=<I/O アドレス>
パラメータはカードの I/O ベースアドレス(0x340 など)です。

デバイスファイルは次のようにして作成できます。

    % mknod /dev/aztcd0 b 29 0

README.aztcd には更に詳しい情報が書いてあります。

GSCD ドライバ

        原作者: Oliver Raupach (raupach@nwfs1.rz.fh-hannover.de)
   マルチセッション: 不可
  複数ドライブの接続: 不可
ドライバのモジュール化: 可
 音楽データの読みだし: 不可
       自動認識: 不可
   デバイスファイル: /dev/gscd0, major 16
     設定ファイル: gscd.h
カーネル設定オプション: Goldstar R420 CDROM support?
    README ファイル: README.gscd

このドライバは次のカーネルコマンドラインを受け付けます。

    gscd=<I/O アドレス>

<I/O アドレス> は、カードのベースアドレス(0x340 など)です。

デバイスファイルは

    % mknod /dev/gscd0 b 16 0
のようにして作成します。

このドライバについての更に詳しい情報は README.gscd ファイルや WWW サイ トの http://linux.rz.fh-hannover.de/~raupach を見てくださ い。

mcd ドライバ (Mitsumi 用)

        原作者: Martin Harriss (martin@bdsi.com)
   マルチセッション: 不可
  複数ドライブの接続: 不可
カーネルのモジュール化: 可
 音楽データの読みだし: 不可
       自動認識: 不可
   デバイスファイル: /dev/mcd, major 23
     設定ファイル: mcd.h
カーネル設定オプション: Standard Mitsumi CDROM support?
    README ファイル: README.mcd

これは Mitsumi のドライブ用の古い方のドライバです。まだ安定していませ んが、新しい機能を持った mcdx ドライバもあります。

    mcd=<I/O アドレス>,<IRQ>

のようにしてカーネルコマンドラインで I/O ベースアドレス(0x340 など) と IRQ 番号を指定できます。

デバイスファイルは次のようにして作ります。

    % mknod /dev/mcd b 23 0

README.mcd に、さらに詳しい情報が載っているでしょう。

mdcx ドライバ (Mitsumi 用の新しいドライバ)

        原作者: Heiko Schlittermann
   マルチセッション: 可
  複数ドライブの接続: 可
ドライバのモジュール化: 可
 音楽データの読み出し: 不可
       自動認識: 不可
   デバイスファイル: /dev/mcdx0, メジャー番号 20
     設定ファイル: mcdc.h
カーネル設定オプション: Experimental Mitsumi support?
    README ファイル: README.mcdx

このドライバは新しく、まだ実験段階のドライバです。古い mcd ドライバの 方がたぶん安定しており、こちらもまだ使用可能です。

このドライバは次のカーネルコマンドラインによって

    mcdx=<I/O アドレス>,<IRQ>

I/O ベースアドレス(0x340 など)と、IRQ 番号を設定できます。

デバイスファイルは次のようにして作成します。

    % mknod /dev/mcdx0 b 20 0

さらに詳しいことは README.mcdx を御覧ください。

cm206 ドライバ

        原作者: David A. van Leeuwen (david@tm.tno.nl)
   マルチセッション: 可
  複数ドライブの接続: 不可
ドライバのモジュール化: 可
 音楽データの読み出し: 不可
       自動認識: 可
   デバイスファイル: /dev/cm206cd, メジャー番号 32
     設定ファイル: cm206.h
カーネル設定オプション: Philips/LMS CM206 CDROM support?
    README ファイル: README.cm206

このドライブは、次のカーネルコマンドラインによって、

    cm206=<I/O アドレス>,<割り込み>

I/O ベースアドレス(0x340 など)と、割り込みチャネルを設定することがで きます。

デバイスファイルは以下のようにして作成します。

    % mknod /dev/cm206cd b 32 0

さらに詳しいことは、README.cm206 を御覧ください。

optcd ドライバ

        原作者: Leo Spiekman (spiekman@dutette.et.tudelft.nl)
   マルチセッション: 不可
  複数ドライブの接続: 不可
ドライバのモジュール化: 可
 音楽データの読み出し: 不可
       自動認識: 不可
   デバイスファイル: /dev/optcd0, メジャー番号 17
     設定ファイル: optcd.h
カーネル設定オプション: Experimental Optics Storage ... CDROM support?
    README ファイル: README.optcd

次のカーネルコマンドラインで

    optcd=<I/O アドレス>
カードの I/O ベースアドレス(0x340 など)を設定できます。

デバイスファイルは次のようにして作成します。

    % mknod /dev/optcd0 b 17 0

さらに詳しい情報は、README.optcd を御覧ください。

sjcd ドライバ

        原作者: Vadim V. Model (vadim@rbrf.msk.su)
   マルチセッション: 不可
  複数ドライブの接続: 不可
ドライバのモジュール化: 不可
 音楽データの読み出し: 不可
       自動認識: 不可
   デバイスファイル: /dev/sjcd, メジャー番号 18
     設定ファイル: sjcd.h
カーネル設定オプション: Experimental Sanyo H94A CDROM support?
    README ファイル: README.sjcd

次のカーネルコマンドラインで

    sjcd=<I/O アドレス>,<割り込み>,<DMA>
カードの I/O ベースアドレス(0x340 など)、割り込み、DMA チャネルを設 定できます。(例 sjcd=0x340,10,5)

デバイスファイルは次のようにして作成します。

    % mknod /dev/sjcd b 18 0

さらに詳しいことは、 README.sjcd を御覧ください。

SCSI ドライバ

        原作者: David Giller
   マルチセッション: 可 (ドライブによっては不可)
  複数ドライブの接続: 可
ドライバのモジュール化: 可
 音楽データの読み出し: 可 (ドライブによっては不可)
       自動認識: 可
   デバイスファイル: /dev/scd0, メジャー番号 11
     設定ファイル: cdrom.h
カーネル設定オプション: SCSI CDROM support?
    README ファイル: なし

SCSI カードそれぞれに特有のカーネルコマンドラインに指定するオプション があります。詳しくは SCSI HOWTO を参照してください。

(最大 SCSI バスの数だけの) 複数のドライブを接続することができます。 デバイスファイルは、メジャー番号が 11 で、マイナー番号が 0 以上のもの を使用します。次のようにして作成してください。

    % mknod /dev/scd0 b 11 0
    % mknod /dev/scd1 b 11 1

IDECD ドライバ

        原作者: Scott Snyder (snyder@fnald0.fnal.gov)
   マルチセッション: 不可
  複数ドライブの接続: 可
ドライバのモジュール化: 不可
 音楽データの読み出し: 不可
       自動認識: 可
   デバイスファイル: /dev/hd{b,c},  メジャー番号 22
     設定ファイル: cdrom.h
カーネル設定オプション: Include support for IDE/ATAPI CDROMs?
    README ファイル: README.ide

ATAPI CD-ROM ドライブ用のドライバです。このドライバは次の形式のカーネ ルコマンドラインを認識します。

    hdx=cyls,heads,sects,wpcom,irq
       または
    hdx=cdrom

hdx は {hda,hdb,hdc,hdd} のいずれかか、または単に hd とすると順に次の ドライブを指示します。最初の3つのパラメータ(cyls,heads,sects)のみが必 須のものです。例えば hdc=1050,32,64 hdd=cdrom などです。

4.4 Linux カーネルの起動

さて、それでは新しいカーネルを起動する準備はできましたか。リブートし たら、次に示すようなデバイスドライバが出すメッセージを確認しましょう。 (このメッセージはドライブのタイプによって異なります。)

    SBPCD: Trying to detect a SoundBlaster CD-ROM drive at 0x230.
    SBPCD: - Drive 0: CR-562-x (0.76)
    SBPCD: 1 SoundBlaster CD-ROM drive(s) at 0x0230.
    SBPCD: init done.

この起動メッセージがスクロールしてしまって見えない場合には、 Shift+PageUp でバックスクロールしたり、dmesg コマンドや tail /var/adm/messages などのコマンドで確認しましょう。

ドライブが認識されなかったり、エラーが出たりしたときには、「困った時の 対処」の項を見てください。

4.5 CD-ROM のマウント・アンマウントと排出

CD-ROM をマウントする場合、ディスクをドライブに入れた後、ルートの権限 で次のようにマウントコマンドを実行してください。(前記のように CD-ROM ドライブのデバイスファイルに /dev/cdrom というシンボリックリンクを設定 した場合です)

    % mount -t iso9660 -r /dev/cdrom /mnt

これで /mnt の下で CD-ROM にアクセスすることができます。 /mnt とは一般的には一時的なマウントポイントですから、恒久的に使う には /cdrom などという名前の方がよいでしょう。mount コマ ンドには他にも有用なオプションがあります。詳しいことはオンラインマニュ アルの mount(8) の項を見てください。(訳注:mount(8) と はオンラインマニュアルの8章の mount の節という意味です。man 8 mount で表示されるはずです。)

/etc/fstab に項目を書き加えることで、Linux の起動時に CD-ROM を自動的にマウントしたり、マウントする時のパラメータを指定することがで きます。これもオンラインマニュアルの fstab(5) を見てください。

音楽用 CD を再生する場合はディスクをマウントしてはいけません。

CD-ROM をアンマウントするためにはルートになって、次のように umount コマンドを実行します。

    % umount /mnt

ディスクをアンマウントできるのは、そのドライブにアクセスしているプロセ スがない時にかぎります。(またはそのドライブが何かのプロセスのデフォル トのディレクトリになっている時にもアンマウントはできません。)ディスク はアンマウントしてからでないと排出してはいけません。大抵のドライブには Eject ボタンがついていますが、ソフトウェア的にディスクを排出するプログ ラムもあります。

CD-ROM をマウントしている間は、たとえ Eject ボタンを押してディスクを排 出することが可能でも、排出してはいけません。(ドライブによってはマウン トしている間は排出できなくなります) SPBCD ドライバはアンマウントされ ると自動的にディスクを排出し、ディスクが入ると自動的にマウントします。 (この機能はカーネルのコンパイル時や、またはソフトウェア・コマンドを使っ て off にすることもできます。)

4.6 困った時の対処

この HOWTO に従ったのにもかかわらず、問題が起こったら、以下の項目を確 認してください。この項目は、あとになるほど複雑な問題を扱います。チェッ クして、うまくいかない時には次の項目に移る前にその問題を解決してくださ い。

Step 1: 自分でコンパイルした新しいカーネルを使用していますか?

CD-ROM を扱えるようにコンパイルし直したカーネルを使う時には、その日付 を見て新しくコンパイルしたものが動作しているかを確認できます。 次のように uname コマンドでタイムスタンプを見て確認してください。

    % uname -a
    Linux fizzbin 1.1.31 #1 Wed Jul 20 16:53:35 EDT 1994 i386

または /proc/version を見ることでも確認できます。

    % cat /proc/version
    Linux version 1.2.13 (root@fizzbin) (gcc version 2.6.3) #9 Sun Aug 6 11:56:47 EDT 1995

この日付がコンパイルした時間と異なる場合には、古いカーネルを走らせてい るのでしょう。本当にリブートしましたか? LILO を使っているなら、インス トールし直しましたか(/etc/lilo/install の実行)フロッピーディスクから の起動の場合、新しい起動ディスクを作成しましたか? 確認しましょう。

Step 2 : 正しいカーネルドライバが本当に組み込まれていますか?

/proc/devices を見れば、どんなドライバが組み込まれているかが わかります。

    % cat /proc/devices
    Character devices:
     1 mem
     4 tty
     5 cua
     6 lp
    14 sound
    15 Joystick

    Block devices:
     2 fd
     3 hd
    25 sbpcd

まず CD-ROM デバイスドライバを探しましょう。ブロックデバイスの中にある はずです。上の例では spbcd が見つかりました。

また ISO-9660 ファイルシステムがサポートされているかどうかも /proc/filesystems を見て確かめてください。

    % cat /proc/filesystems
            ext2
            msdos
    nodev   proc
            iso9660

ドライバが使用している I/O ポートアドレスを確認するためには /proc/ioports を見ます。

    % cat /proc/ioports
    ...
    0230-0233 : sbpcd
    ...

コンパイルして組み込んだはずのドライバが表示されない場合には、 カーネルの設定か、構築に何か問題があったのでしょう。もう一度やり直して みてください。

Step 3 : カーネルドライバがドライブを起動時に認識していますか?

CD-ROM デバイスが起動時に認識されているかを確かめるために、起動時のメッ セージを見る必要があります。メッセージがスクロールされて見えない時には、 直後なら Shift-PageUp で見ることもできますが、 dmesg コマンド で見ることもできます。

    % dmesg

または

    % tail /var/adm/messages

ドライブが認識されない時には何かがおかしいはずです。電源が入っているか、 ケーブルが正しく接続されているかを確認しましょう。ジャンパスイッチのあ るものは、ハードウェアアドレスなどが正しく設定されているかを確かめましょ う。 IDE デバイスとして ATAPI CD-ROM を1台だけ接続している時には "single" "master" にして "slave" になっていないかを確認しましょう。DOS で正しく動くことを確認できたら、それらのハードウェアの設定はうまくいっ ていると考えてよいでしょう。

多くのドライバは自動検出機能を持っていますが、持っていないものもありま す。また自動認識機能は必ずしも信頼できるとは限りません。ドライバの種類 に合わせたカーネルコマンドラインで、ドライブの存在を明示的に示してやる こともできます。また同時に標準とは異なる I/O アドレスや他のパラメータ を設定することもできます。 LILO や LXboot の場合は起動時に手動で、それ らのパラメータを入力することもできます。

動かない時に考慮すべきもう一つの可能性は、ドライブの種類とは異なる種類 のドライバを組み込んでしまったかもしれないということです。 説明書に IDE と記載してあるにも関わらず、実際には ATAPI ではなく メーカー独自のインターフェイスを持ったドライブである場合があります。

そのドライブ(またはインターフェイスカード)が DOS のドライバによって 初期化しないといけないものかもしれません。この場合には DOS でいったん 起動したあと、Control-Alt-Delete でリスタートして、Linux を起動します。

また、使っているドライブがここに載っていないものの場合、Linux にはその ドライバが用意されていないのかもしれません。この文書の最後に使えるドラ イブのリストをあげておきますので、チェックしてください。

Step 4: ドライブからデータを読み出せますか?

CD-ROM の読み取りをしてみましょう。次に示すコマンドを打つと、ドライブ のアクセスランプが(あれば)点灯するはずです。エラーが出た時は何か問題 が起こっていることを示します。if に指定するデバイスファイルは CD-ROMを 示す適切なものを用いてください。ISO-9660 の CD-ROM (Linux 配布用の CD-ROM など)がドライブに入っていることも確かめてください。終了するに は Ctrl-Cを入力します。

    dd if=/dev/cdrom of=/dev/null bs=2048
    ^C
    124+0 records in
    124+0 records out

これがうまくいったら、カーネルはうまくドライブとやりとりができますので、 Step 5 に移ってください。

うまくいかない時にまず考えられるのは、デバイスファイルが間違っているこ とです。デバイスファイルが本当に /dev ディレクトリにあって、 正しい(前述の通りの)メジャー番号とマイナー番号がついているか確かめて ください。メジャー番号は下の例のように ls -l コマンドで確認で きます。

    ~# ls -l /dev/cdrom
    lrwxrwxrwx   1 root     root            8 Jul  2 11:58 /dev/cdrom -> /dev/mcd
    ~# ls -l /dev/mcd
    brw-r--r--   1 root     disk      23,   0 Jul 18  1994 /dev/mcd

この場合は Mitsumi CD-ROM で メジャー番号は 23, マイナー番号は 0 です。 また、デバイスファイルの読みだし、書き込み権限が出ているかも確認してく ださい。

これがうまくいかない理由には、ハードウェアの問題もあり得ます。DOS で試 して動作しなければ、ハードウェアの問題でしょう。

Step 5 ドライブがマウントできますか?

Step 4 のように読み出しができるのに、ドライブがマウントできない場合に は、まず次のようにして、カーネルの ISO9660 ファイルシステムの機能が使 えるようになっているかを確かめてください。

    % cat /proc/filesystems
            ext2
            msdos
    nodev   proc
            iso9660

CD-ROM をマウントするときには "-t iso9660""-r" というオプションを付けるのを忘れないようにしてください。また CD-ROM (音楽用 CD ではありません)が壊れていないことも(他のマシンで試すなど して)確かめてください。また普通は root 権限でマウントしなければなりま せん。

ATAPI CD-ROM の場合、2048 というブロックサイズを与えてやる必要があるか もしれません。 "0o block=2048" というオプションを mount コマ ンドに与えてみてください。

また、マウントポイントが存在するか、またそれが空のディレクトリであるか 確かめてください。

sbpcd ドライバの場合、音楽 CD の停止命令を送ってみてください。例えば、 xcdplayer 附属の xcdstop などを実行した後でマウントできるようになる場 合があります。おそらくバグでしょう。

起動時に CD-ROM を自動的にマウントしようとしているなら、 /etc/fstab に正しく記述されているか確かめましょう。(訳注: 最 近の Slackware には /etc/fstab によらず起動時に CD-ROM を自動でマウント する rc ファイルが附属しています。)

syslog デーモンを起動している場合には、カーネルのエラーメッセージが記 録されていることもあります。次のようにして "dmesg" コマンドを 試してみてください。

    % dmesg
    SBPCD: sbpcd_open: no disk in drive

システムの設定によっては、エラーが /var/adm のなかのファイル に記録されている場合もあります。

音楽用 CD が動かない時

ここではドライブが CD-ROM を読みとれるのに、音楽用 CD を演奏できないと きのための問題解決法を説明します。

音楽用 CD を演奏するためには、そのためのアプリケーションが必要です。ア プリケーションによっては問題があったり、使っているドライブと合わないも のもあります。動作しない時は他のアプリケーションを試してみるか、コンパ イルし直してみましょう。

また、CD-ROM ドライバによっては音楽 CD の演奏機能がないものがあります。 ドライバの README やソースコードを見て確認しましょう。

ドライブについているヘッドホンジャックから音が出るならば、問題はサウン ドカードにあります。ミキサープログラムを使って入力デバイスとボリューム レベルを調整してみてください。また、CD-ROM ドライブとサウンド・カード をケーブルで接続しないとサウンドカードから音が出ないので、それも確認し ましょう。サウンドカードがきちんと動作しているかは、 Sound HOWTO を見て 確認してください。

それでもうまくいかない時には

まだ問題が解決できない場合、最後の手段をこっそりとお教えしましょう。

次の章へ , 前の章へ

この章の目次へ, この文書の目次へ

この文書の最初へ , この章の最初へ