Daily ASCII Linux

All ASCII Linux Issue / Linux Magazine 2000年2月号

これで解決! Linux 100の疑問―その2

ハードウェア


2001年8月27日

ハードウェアその1

Linux magazine logo

Linux magazine 2月号表紙
本記事も収録 Linux magazine 2000年 2月号 1,390円

Q:グラフィックスカードをインストーラが正しく認識しません

A:Linuxではグラフィックス出力に、フリーのXサーバソフトウェアのXFree86を採用しています。Voodoo3やMillennium G400、RIVA TNT2などのグラフィックスカードは、XFree86 3.3.4以降でサポートされました。TurboLinux 4.0やLASER5 Linux 6.0、Vine Linux 1.1では、XFree86 3.3.3.1を使っているので、それらのグラフィックスカードを認識できません。インストールの時には、Xの設定をしないで、その後XFree86 3.3.5以降にアップグレードしてから、Xを設定すればよいでしょう。

アップデート用のXFree86は、それぞれのディストリビューションのFTPサイトに、RPMパッケージで用意されています。XFree86-3.3.5-*というファイルを見つけて、XFree86で始まるRPMファイルをダウンロードしておきます。次に“RPM -Uvh <パッケージ名>”でアップグレードして、Xのセットアッププログラムを起動します。

セットアップは、XF86Setupコマンドで行います(画面5)。ディストリビューションによっては、Xconfiguratorコマンドやturboxcfgコマンドを使う場合もあります。

Red Hat Linux 6.1やKondara MNU/Linux、OpenLinux 2.3では、XFree86 3.3.5を採用していますので、インストーラが自動認識します。

お使いのグラフィックスカードがXFree86に対応しているかどうかは、マニュアルを読むか、それぞれのディストリビューションやXFree86.org(http://www.xfree86.org/)のWebサイトで調べてください。

画面5
画面5 XF86Setupのグラフィックスカード選択ボタン

Q:内蔵モデムが使えません

A:最近のノートPCに採用されている内蔵モデムは、DSPを使いソフトウェアによってモデム機能を実現しているいわゆる「Winmodem」というものです。Winmodemはソフトウェアでモデム機能が実現されていますので、現時点ではWindows上でしか使用できません。

しかし、Linux上でこのWinmodemを使えるようにドライバを開発する「linmodem」というプロジェクトが立ち上がっています。興味のある人は、http://www.linmodems.org/をチェックしてみてください。

また、Lucent社のチップを使ったWinmodemのLinux用ドライバに関して、バイナリパッケージがLucent社からリリースされているほか、「LTModem」(http://www.close.u-net.com/ltmodem.html)というプロジェクトも活動しています。

Q:サウンドカードの設定はどうするのですか?

A:Linuxのカーネルには、フリーのサウンドドライバが含まれています。しかしサウンドカードによっては、インストーラでは自動的に検出されない場合があります。そのときには手動で設定します。

Red Hat系のLinuxでは、sndconfigコマンドで設定します。root権限で、まず/usr/sbin/sndconfigを実行してください。もしインストールされていない場合には、RPMパッケージのsnd-xxx.i386.rpmとsndconfig-xxx.i386.rpmをインストールしてからsndconfigを実行します。またTurboLinuxでは、turbosoundcfgコマンドで設定します。

lsmodコマンドで、soundモジュールが組み込まれているか確認しておきましょう。

なお、設定された結果は、リスト1のように/etc/conf.modulesファイルに記録されます。ISAバスのサウンドカードなどで、I/OアドレスやIRQ、DMAポートなどが合っていないために動作しない場合には、conf.modulesファイルを正しい値にエディタで変更します。修正したら、


# /etc/rc.d/init.d/sound res

tart

と行って、サウンドドライバを再起動します。

CreativeのSound Blaster(Live!を除く)やESS系サウンドチップ、YAMAHAのFM音源チップOPL3などを使用しているのならば、カーネル標準のドライバで動作します。

しかし、Sound Blaster互換製品やYAMAHAのYMF724、YMF744などを使用している場合には、商用のOSS(Open Sound System)ドライバを組み込む必要がありますので、サウンドドライバの入手先(表1)を参照してください。

表1 サウンドドライバの入手先
Webサイト 内容
OSS/Free(The Linux Sound System)
http://www.linux.org.uk/OSS/
フリーのサウンドドライバで、Linuxのカーネルに標準で含まれているため、新たに入手する必要はない
ALSA(Advanced Linux Sound Architecture)
http://www.alsa-project.org/
LinuxのサウンドドライバをGPLに従って開発しているグループ。対応しているサウンドカードのドライバは、OSS/Freeとほぼ同様だが、サウンドカードによっては(特にGUSのドライバ)、OSS/Freeよりも拡張されている場合がある。APIはOSSと互換性がある。最新バージョンは、0.4.1h
商用OSS(Open Sound System)
http://www.opensound.com/
4Front Technologies社が開発し、販売しているサウンドドライバ。プラットフォームはLinuxに限らず、広く主要なUNIX環境をサポートしており、デバイスドライバは、各OSプラットフォームで統一したAPIを提供する。販売されているのはバイナリのコードのみ。ドライバの機能はハードウェアごとに異なるが、OSS/Freeよりも拡張されているものが多く、新しいハードウェアのサポートも行われている
Creative Open Source page
http://opensource.creative.com/
Sound Blaster Live!のLinuxドライバを、GPLライセンスに基づきソースコードで公開している。現時点ではバイナリは配布されていないので、自分でコンパイルしてインストールする必要がある。1999年11月より正式版となったが、0.3βバージョンから機能の追加はない


alias sound sb
pre-install sound insmod sound dmabuf=1
alias midi opl3
options opl3 io=0x388
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
リスト1 /etc/conf.modulesファイルのサウンド設定部分(LASER5 Linuxの場合、内容はカードによって異なる)

(Linux magazine編集部)


ハードウェアその2

Q:プリンタに出力したいのですが?

A:TurboLinux、Vine Linuxなど、ディストリビューションによっては、インストール時にプリンタの設定ができるものがあります。

Red Hat LinuxやLASER5 Linuxでは、GNOMEのメニューからコントロールパネルを開き、Printtoolを使用して、プリンタの設定を行うことができます(画面6)。

パラレルポートに接続したローカルプリンタや、LANで接続されたネットワークプリンタはもちろんのこと、Windowsマシンで共有プリンタに設定したプリンタにもSMBプロトコルでプリントアウトすることができます。

画面6
画面6 Red Hat系のディストリビューションに採用されているPrinttool。プリンタの設定をGUIで行うことができます。左上の画面のTestsメニューから「Print Postscript test page」を実行してテストページが正しく印刷ができれば設定は完了です。

画面6

画面6

Q:CD-R/RWドライブにデータをバックアップするには?

A:LinuxでCD-R/RWにデータを書き込む手順は、大きく3つの手順に分けることができます。まず、適当なディレクトリにCD-R/RWへ書き込むためのファイルを全部コピーしておきます。次に、mkisofsコマンドで、先ほど用意したディレクトリから、ハードディスク上に仮想ファイルシステムのイメージを作成します。念のため、そのファイルシステムをマウントして、内容を確認しておくとよいでしょう。最後に、そのファイルシステムのイメージを、cdrecordコマンドでCD-R/RWに書き込みます。

コマンドラインでは操作が面倒だという人は、X Window System上で動作するX-CD-Roastを使うとGUIで操作することができます。X-CD-Roastは内部でmkisofsやcdrecordを呼び出しています。

詳しい情報は、CD-Writing HOWTO(http://www.linux.or.j p /JF/JFdocs/CD-Writing-HOWTO.html)をご覧ください。

Q:UltraDMA/66対応のハードディスクは使えますか?

A:現在のディストリビューションに使われているカーネル2.2では、UltraDMA/66はサポートされていません。UltraDMA/33で使うことをお勧めします。

しかし、どうしてもというのでしたら開発版カーネル2.3ではサポートされていますし、カーネル2.2でもパッチを当てることで、UltraDMA/66も使うことが可能になっています。カーネルの再構築が必要ですから、ある程度知識と経験がないと大変な作業です。具体的なインストールの方法は、今月号131ページからの記事「高速ハードディスクをLinuxで使いこなす」を参考にしてください。

Q:ハードディスクのアクセスが遅いような気がします。

A:IDEハードディスクのアクセス設定が、PIO転送になっている場合があります。ハードディスクとマザーボードがDMA転送に対応しているのなら、DMA転送に設定することで高速にアクセスできる可能性があります。

dmesgコマンドで、Linux起動時のメッセージを見てみましょう。リスト2のような部分が見つけられたら、「BIOS settings」の右側にある「hda:pio」の部分に注目します。この場合、PIO転送になっています。もし「hda:DMA」になっていたならDMA転送になっています。なおhdaはドライブ名で、複数のドライブがついているならhdbやhdcのところも見ます。


PIIX3: IDE controller on PCI bus 00 dev 39
PIIX3: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0xffa0-0xffa7, BIOS setting: hda:pio, hdb:pio
    ide1: BM-DMA at 0xffa8-0xffaf, BIOS setting: hdc:pio, hdb:pio
hda: IBM-DTTA-350640, ATA DISK drive
hdc: FX120T, ATAPI CDROM drive
リスト2 Linux起動時のハードディスク認識部分のメッセージをdmsgで見る

または、下記のように行って、「using_dma = 0 (off)」と表示されたらDMA転送は使われていないことがわかります。


# hdparm -t -d /dev/hda

もし、DMAがオフの場合には、


# hdparm -t -d 1 /dev/hda

とDMAをオンにテストしてみます。エラーが出力されずにテスト時間が速くなったなら、/etc/rc.d/rc.localの最下行に、「hdparm -d 1」を加えてブート時に設定するように変更します。

Q:64Mバイト以上のメモリが認識されません。

A:Linuxのカーネルが2.0.35以前のバージョンの場合は、64Mバイト以上のメモリを自動的に認識しません。その場合は、ブート時にカーネルにオプションをつけることでメモリの容量を指定することができます。たとえば、128Mバイトのメモリを指定するにはLILOと表示された時点で、


LILO: linux mem=0x8000000

または、


LILO: linux mem=128M

というように指定します。

毎回ブート時に指定するのは面倒なので、通常は/etc/lilo.confにオプションを書いて、liloを設定しておくほうがよいでしょう(リスト3)。lilo.confを書き換えたら忘れずに、


# /sbin/lilo

と行って、ブートセクタのliloに反映させます。これで次回のブート時から新しい設定になります。なお、起動後に認識されたメモリ容量を表示するには、freeコマンドを使います(リスト4)。

リスト3
リスト3 メモリ容量128Mバイトに設定する場合の/etc/lilo.confの例


#free
             total    used    free  shared  bffers  cached
Mem:        128076   72972   55104   29896    5812   36508
-/+ buffers/cache:   30652   97424
Swap:       128484       0  128484
リスト4 メモリ、スワップの使用量はfreeコマンドで調べることができる

Q:SCSIカードはなにが使えますか?

A:SCSIホストアダプタは、業界標準ともいえるアダプテック社をはじめとして多くのメーカーの製品に対応しています。有力なディストリビューションのWebサイトには、そのディストリビューションが対応しているSCSIホストアダプタのリストが掲載されています。

なお、Linuxへの対応は、ハードウェアメーカーが保証やサポートを行うことはほとんどありません。しかし、Webページに動作確認情報を掲載したり、FTPサイトでLinux用ドライバを提供しているメーカーもありますので、製造メーカーのWebサイトを探してみてください。

(Linux magazine編集部)


ハードウェアその3

Q:ハードディスクのRAID対応は?

A:COMPAQ SMART2やMylex DAC960といったRAID専用コントローラを使うことができます。 カーネル2.2からソフトウェアRAIDが実用的に動作するようになりました。ソフトウェアRAIDを実現するためには、RAID toolsユーティリティをFTPサイトから手に入れる必要があります。 

なお、RAIDサブシステムのように、ホスト側からは1台のハードディスクドライブに見せるタイプのものは、そのままでもちろん使えます。

Q:USBデバイスは使えますか?

A:LinuxのUSBサポートは、バージョン2.2.7からカーネルのソースに含まれるようになりました。しかし、USB接続のマウスとキーボードをサポートするためのコードは含まれていますが、カーネルのコンパイル時のオプションがコメントアウトされているのを見ればわかる ように、現時点では開発途上であり、一般ユーザーが使えるレベルではありません。

しかし、自分でカーネルをコンパイルしてUSBマウスを実際に使っているユーザーもいるようです。開発系カーネル2.3系では、USB接続のデジカメやプリンタ、ZIPドライブなどのストレージデバイスをサポートするためのコードなどが追加されています。USBデバイスはカーネル2.4が正式にアナウンスされるまで待ったほうがよいでしょう。

LinuxのUSBサポートに関する情報は「Linux USB」(http://www.linux-usb.org/)を参照してください。

Q:IrDAは使えますか?

A:IrDA(赤外線ポート)のサポートは、2.2系カーネルから含まれるようになっています。シリアルポートのエミュレーションを行うプロトコルであるIrCOMMは安定して動作しているようです。IrCOMMを使うと、IrDA対応のISDN公衆電話やIrDAポートが装備されている携帯電話とやり取りができるようになります。また、IrDAのプロトコルの一つであるIrOBEXを使うことで、PalmIIIとデータ交換ができるようになるとドキュメントに記述があります。詳しくは「The Linux IrDA Project」(http://www.cs.uit.no/linux-irda/)を参照してください。

Q:MOドライブを接続したいのですが

A:SCSI接続のMOドライブを使うことができます。ただし、540Mバイト以下のMOと640Mバイト以上のMOでは、物理フォーマットが異なっているために、注意しなければいけないことがあります。

物理的なセクタサイズが、540MバイトまでのMOでは512バイトだったの対して、640Mバイト以上のMOでは2048バイトに変更されています。そのため、カーネル2.0系を使っているディストリビューションでは、カーネルにパッチを当てる必要があります。2.2系のカーネルでは問題ありません。

なお、MOではないですがDVD-RAMを使う場合にも、セクタサイズが2048バイトのため同様の注意が必要です。

カーネル2.0.x用の2048バイト/セクタ対応パッチについては、「640MB MO on Linux」のWebサイト(http://liniere.gen.u-tokyo.ac.jp/2048.html)を参照してください。

もちろん、Windows標準であるFATフォーマットのMOを読み書きすることもできますので、サイズが大きめのデータを交換する際には役に立つでしょう。

(Linux magazine編集部)




[通常ページに戻る]
ASCII24 http://ascii24.com/
Copyright (C)1999-2006 ASCII Corporation. All rights reserved.