Linuxmemo19
Dynabook DB55C に plamo2.1 をインストールしました。
Linux My Tips ちょっとしたヒントとメモ
DynaBook に役立つページ
Toshiba Linux Utilities
Linux LapTop Page
マシンの仕様
Dynabook DB55C に plamo2.1 をインストールしました。
これがなかなか楽しいおもちゃ(笑)
ノートに CDROM とネットワークカードがついている。CDがついているわけで
すから、linux(plamoを入れた)のインストールくらい簡単にいけるのではない
かと思ったのですが、けっこう時間を食いました。
原因は CD-ROM の不良というか、知らないうちに埃とか傷がついていたのかも
しれません。ちゃんと/dev/hdc として認識はできているのに、ときどき read
エラーを起こパッケージがインストールが進みませんでした。
マシン仕様
Celreron 550MHz
メモリ 64MB
ビデオ RAM 4MB
グラフィックカード ATI Mobility-C
ハードディスク 10G
フロッピーディスク
CD-ROM ATAPI 接続
PC カード
詳しくは dmesg をあとで。
10G の HDD には windows ME が入ってましたので、これを fips でパーティ
ションを再構成して、次のようなパーティション構成に変更しました。
/dev/hda1
/dev/hda2 約3G を Linux native
/dev/hda3 swap
fips の使い方
まず windows の起動ディスクを作成しておく。
別のディスクに fips.exe をコピーしておきます。
あるいは dos の起動ディスクを作成しておき、そこに fips を入れておいて
もよいのですが、dos の起動ディスクを作るほうが大変でしょうか。
WindowsME を起動ディスクで起動して、single dos モードに入ります。
そこで fips があるディスクに差し替えて、fips を起動します。
あとは画面に表示される指示にしたがって作業します。
パーティションが変更できたら、linux の bootdsk で起動し、fdsik を起動
します。最初に fips でできたパーティション(私の場合は /dev/hda2 になり
ます)を一度 d で解放してから、新たに linux をインストールするパーティ
ションを作成します。
パーティションテーブルは次のようになっています。
bash# fdisk -l
ディスク /dev/hda: ヘッド 255, セクタ 63, シリンダ 1222
ユニット = シリンダ数 of 16065 * 512 バイト
デバイス ブート 始点 終点 ブロック ID システム
/dev/hda1 * 1 750 6024343+ c Win95 FAT32 (LBA)
/dev/hda2 751 1200 3614625 83 Linux
/dev/hda3 1201 1222 176715 82 Linux スワップ
まずは bootdsk でひっかかってしまいました。
CD-ROM がついているので、とにかく何でもよいだろうと、ともあれ手持ちの
bootdsk を使ってみました(ディスクトップ用SCSI) 。これでちゃんと起動し
てくるので、簡単にいくだろうと思ったのですが(笑)
login: で root でログインは問題なし。
ところがここで kon を起動すると、ハングアップしてしまう。
そこで、先に fdisk をやめて setup に進もうとすると、
これもハングアップする。
ノート用の2枚になった起動ディスクも起動は問題がないのですが、setup コ
マンドでハングする。
ということで、どうやら kon を使うという状態がだめらしいので、English
版のbootdsk で起動しましたら、これは OK でsetup に進めました。
スワップの設定とか、インストール先、インストール元の設定もちゃんといけ
るのですが、次にひっかかったのが、インストールの作業中に CD-ROM がread
エラーを起こして読み込みエラーの嵐になるので、続行できなくなってしまう
のです。それでも入ることは入る。
そこで、English 版のbootdsk し、最小のインストールを選んでインストール
をしてみましたところ、いくつかの読み込みエラーがあるのですが、ともあれ
入ることは入るのです。
ここでエラーが出てインストールされなかったパッケージは以下のものでした。
/var/adm/mount/plamo/a1/baseutil.tgz
hdsetup.tgz sysvinit.tgz
ap1/gs550.tgz
d1/gcc 関係のパッケージ
libc.tgz
n1/tcpip.tgz
jml1/emacsnoi.tgz
最小のセットアップなので、 X 関係はインストールされていません。
ノート用もしくはディスクトップ用のインストールで進もうとすると、x1
xap1 にあるパッケージでエラー続発となり、中断せざるをえなくなりました。
baseutil.tgz のようなものはインストールができた段階で installpkg でい
れてやれば入るのですが、どうやら X 関係は追加でインストールしようとし
ても同じエラーがでてしまい、/dev/hdc にある CD-ROM からは入らないよう
です。
それでもとにかくインストールを完了するところまでやりたかったので、最小
セットアップでも入れられないパッケージが複数あったのですが、とにかく起
動してきて、怪しいインストールでもとにかく plamo が動くことはわかりま
した。
怪しいインストールの dmesg の一部
------------------------------------------
Linux version 2.2.16 (root@hurricane) (gcc version 2.95.2 19991024 (release)) #2 Sun Aug 13 12:09:44 JST 2000
Detected 547322 kHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 1091.17 BogoMIPS
Memory: 62544k/65472k available (1452k kernel code, 416k reserved, 924k data, 136k init)
Dentry hash table entries: 8192 (order 4, 64k)
Buffer cache hash table entries: 65536 (order 6, 256k)
Page cache hash table entries: 16384 (order 4, 64k)
CPU: Intel Pentium III (Coppermine) stepping 03
Checking 386/387 coupling... OK, FPU using exception 16 error reporting.
Checking 'hlt' instruction... OK.
Checking for popad bug... OK.
POSIX conformance testing by UNIFIX
PCI: PCI BIOS revision 2.10 entry at 0xfd9ae
以下略
plamo2.1 のインストール(その2)
CD からのインストールはエラーの嵐なので(たぶん原因は使用したCDのほうに
あるでしょう)、次にあらかじめマウントしたハードディスクのパーティショ
ンからインストールするという方法を選びました。
このためには windows のどこかにインストールするplamo のパッケージをコ
ピーしなくてはいけません。
ディスクトップマシンの SCSI CD-ROM では CD の読みだしにエラーはないの
で、まずはディスクトップマシンのplamo21 で、plamo のインストールパッケー
ジをコピーしました。それから、WindowsME のほうでローカルネットワークの
設定を行い、ffftp でディスクトップマシンに接続し、WindowsME のディレク
トリにインストールパッケージをコピーしました。
ハードディスク上にインストールパッケージの準備ができたところで、
plamo の英語版 bootdsk で起動します。
root でログインします。
mkdir inst でインストールパッケージのある場所をマウントするディレクトリ
を作成しておき、
mount -t vfat /dev/hda1 /inst
setup に進みます。
最初に fdisk で Linux 用パーティションと swap パーティションを作ります。
swap パーティションの初期化
インストール元の設定は /inst/linux/plamo21 になります。
インストール先は /dev/hda2
canna を使うノート用のパッケージをインストールしました。
(しかしながらあとでわかったのですが、このDynaBook はノート用インストー
ルでもディスクトップ用でもどちらを選んでもほとんど問題はないです。とい
うのは内蔵のネットワークカードは tulip で認識できるので、pcmcia がイン
ストールされなくても問題はないです。)
X の設定
root でログインし、XF86Setup を実行する。
マウス PS/2 マウス
キーボード 106
グラフィックカード ATI Wander SVGA を選択
画面の解像度は 1024*768
もう少ししまった画面が好きなのですが、これ以上は無理なようでした。
ネットワークカードの認識
最初は PCMCIA だと思いこみ、PCMCIA-HOWTO を参考にあれこれやってみたのですが、
どうもカードをうまく認識してくれません。
ネットワークカードは内蔵です。
仕様書には、
PC Card Standard 準拠、CardBus対応
LAN (RJ45)
となっていました。
結局のところは、このように認識されました。
tulip.c:v0.91g 7/16/99 becker@cesdis.gsfc.nasa.gov
eth0: Accton MPX EN5251 rev 17 at 0x1800, 00:90:96:06:50:EE, IRQ 10.
PCMCIA だと思い込んでいたので、あれこれ検討をしたのですが。
一度kernel の再構築をしたので、/usr/src にあるpcmcia-cs-3.1.19.tar.gz を
make config
make all
make install しました。
ところが、あれこれ検討をしても、モジュールはロードされているけれど、
カードが認識されていない状態に陥ってしまいました。
harry:/# cardctl ident
Socket 0:
no product info available
Socket 1:
no product info available
---lsmod
Module Size Used by
ds 6344 2
i82365 22272 2
pcmcia_core 44768 0 [ds i82365]
さらに、東芝のページで"poll_interval=100" を加えるようにように
書いてあったので、そのようにしてみましたが、効果なし。
/etc/pcmcia/rc.pcmcia
# Slackware startup options go right here:
# Should be either i82365 or tcic
PCIC=i82365
# Put socket driver timing parameters here
PCIC_OPTS="poll_interval=100"
harry:~# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:1198 errors:0 dropped:0 overruns:0 frame:0
TX packets:1198 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
eth0 が出ない状態です。
eth0 がわからないようです。
harry:~# ifport eth0 10base2
eth0: unknown interface.
harry:~# ifport eth0
eth0: unknown interface.
このあたりでこのままでは先が見えないと思いましたので、
plamo ML で DynaBook の内蔵ネットワークカードの認識について
質問をしました。
新しい tulip.c に差し替えればいけるという答え。
tulip.c も入手できたので、
/usr/src/linux/drivers/net にある tulip.c を差し替えました。
とりあえずは組み込みでカーネルを作成することにして、make menuconfig で
組み込みでチェック。
make dep;make clean;make
make modules
make modules_install
depmod -a
ここでのおまけは入手した tulip.c に差し替えると、make が通らなくなってしまったこと。
486 -malign-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=686 -c -o tulip.o tulip.c
tulip.c:3316: parse error before character 032
make[3]: *** [tulip.o] エラー 1
make[3]: 出ます ディレクトリ `/usr/src/linux-2.2.16/drivers/net'
make[2]: *** [first_rule] エラー 2
make[2]: 出ます ディレクトリ `/usr/src/linux-2.2.16/drivers/net'
make[1]: *** [_subdir_net] エラー 2
make[1]: 出ます ディレクトリ `/usr/src/linux-2.2.16/drivers'
make: *** [_dir_drivers] エラー 2
tulip.c:3316: parse error before character 032
といのうことで、ファイルの最後にくっついていた^Z をはずしました。
* tab-width: 4
* End:
*/
^Z
このとき、何を血迷ったか、その上にある ^L まではずしてしまったので、
行の終りがなくなって、make でエラー続発になってしまいました。
この解決はもうお掃除のみですね。
make distclean をかけたらもとに戻りました。
あるいはまた、こんな方法でもきれいにできます。
> 一度、rm -rf /usr/src/linux-2.2.16 してからカーネルソースを再インストー
> ルするか、make mrproper して .depend あたりを掃除してみては如何?
make 後、カーネルを書き込んで再起動。
すると見事にネットワークカードを認識してきました。
tulip.c:v0.91g 7/16/99 becker@cesdis.gsfc.nasa.gov
eth0: Accton MPX EN5251 rev 17 at 0x1800, 00:90:96:06:50:EE, IRQ 10.
ネットワークカード その2 kernel 2.4.1 でPCMCIA を使う
pcmcia カードを体験してみました。
DynaBook
BIOS Vendor: TOSHIBA
BIOS Version: 1.02A.ROM
BIOS Release: 08/29/00
System Vendor: TOSHIBA.
Product Name: DynaBook DB55C/4CA.
Version PX-DB55C4CA.
通常使っている環境は、plamo2.1 kernel 2.2.17
ネットワークカードは内蔵のもの
kernel 2.2.17 では tulip.c を差し替えたドライバで次のように認識しています。
tulip.c:v0.91g 7/16/99 becker@cesdis.gsfc.nasa.gov
eth0: Accton MPX EN5251 rev 17 at 0x1800, 00:90:96:06:50:EE, IRQ 10.
kernel 2.4.1 にしてみたところ、
内蔵のネットワークカードは認識してくれません。
kernel 2.4系では、 2.2 系とはちょっと違ってきて、tulip ドライバは
別ディレクトリになっていました。
harry:/usr/src/linux/drivers/net/tulip# ls
21142.c eeprom.c media.c timer.c tulip_core.c
21142.o eeprom.o media.o timer.o tulip_core.o
ChangeLog interrupt.c pnic.c tulip.h
Makefile interrupt.o pnic.o tulip.o
あれこれ探してみたのですが、dynabook の内蔵ネットワークカードは、
kernel 付属の tulip では、すんなり認識というわけにはいきそうになかった
ので、kernel 2.4 をお試してみるのに、ネットワークカードだけ pcmcia を
使ってみることにしました。
購入したのは、Laneed LD-CDS 1980 円
ただし、現在のところ kernel 2.4.1 はいれたのですが、モジュールのユティ
リティなどは 2.2.16 のままの状態になっているので、
pcmcia-cs-3.1.24.tar.gz も持ってはきたのですが、どうもモジュールのイン
ストール関係がうまくいっていないようですが、なんだか怪しいかなとは思うの
ですが(笑)手動でカードを認識して、通信は開通しました。
起動時にはモジュールがうまく組み込めていないので、
起動直後に netstat を見てみると、これだけしかでません。
harry:~$ netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
127.0.0.0 0.0.0.0 255.0.0.0 U 40 0 0 lo
実際のところカードも認識していなくて、
harry:~$ cat /proc/interrupts
CPU0
0: 29270 XT-PIC timer
1: 718 XT-PIC keyboard
2: 0 XT-PIC cascade
10: 0 XT-PIC Texas Instruments PCI1420, Texas Instruments PCI1420 (#2)
12: 8454 XT-PIC PS/2 Mouse
14: 63333 XT-PIC ide0
15: 4 XT-PIC ide1
NMI: 0
LOC: 0
ERR: 0
harry:~# cardctl status
Socket 0:
5V 16-bit PC Card
function 0: [ready], [wp], [bat dead], [bat low]
Socket 1:
no card
でも、ここで、
# cardmgr と入力するとピッピッと音がするので、
cardctl で見てみると、カードは見えてます。
harry:~# cardctl ident
Socket 0:
product info: "Laneed", "LD-CDS", "2.0"
manfid: 0x0149, 0xc1ab
function: 6 (network)
Socket 1:
no product info available
そうすると、このようになって
harry:~# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 40 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 40 0 0 lo
0.0.0.0 192.168.1.1 0.0.0.0 UG 40 0 0 eth0
messages を見てみると、eth0: NE2000 Compatible で認識されています。
/var/adm/messages
Feb 10 14:21:26 harry kernel: eth0: NE2000 Compatible: io 0x300, irq 3, hw_addr 00:90:FE:0D:90:7C
Feb 10 14:21:26 harry cardmgr[148]: executing: './network start eth0'
harry:/var/adm# cat /proc/interrupts
CPU0
3: 158 XT-PIC pcnet_cs
irq3 にはいってるのですね。
/etc/pcmcia/network.opts を設定します。
pcmcia の SUPPORTED.CARDSファイルに、
このように書いてあったので、
[pcnet_cs driver] [x86,axp]
LANEED LD-CDW Ethernet
/etc/pcmcia/config.opts には、次のように加えておきました。
card "Laneed Ethernet PC Card"
version "ELECOM", "Laneed Ethernet PC Card"
bind "pcnet_cs"
カードを起動時に認識させるために、
/etc/rc.d/rc.S の次の部分を有効にする。
# Initialize PCMCIA devices:
if [ -x /etc/rc.d/rc.pcmcia ] ; then
. /etc/rc.d/rc.pcmcia start
fi
これで起動時にカードが認識されました。
Adding Swap: 176704k swap-space (priority -1)
cs: IO port probe 0x0c00-0x0cff: clean.
cs: IO port probe 0x0800-0x08ff: clean.
cs: IO port probe 0x0100-0x04ff: excluding 0x158-0x15f 0x378-0x37f 0x4d0-0x4d7
cs: IO port probe 0x0a00-0x0aff: clean.
cs: memory probe 0xa0000000-0xa0ffffff: clean.
eth0: NE2000 Compatible: io 0x300, irq 3, hw_addr 00:90:FE:0D:90:7C
ということで、kernel 2.4.1 の環境で手動でカードを無理矢理ねじこんで
しまったという(笑)報告でした。
kernel 2.4 系ではモジュールの組み込み方についてちょっと勉強する
ほうがよいかなと思ってます。
それから、これからpcmcia のネットワークカードを購入するなら、
割合お安い値段でBuffalo の PCMCIA TypeII LPC3-TX はいまのところ
購入しないほうが無難かも。
先にこれを買ったのですが、どうもドライバがないのではと思い、探しました。
LPC3-TX
に次のドライバがありました。
lpc3tx-v1.00a.tar.gz
Turbo と RedHat 用と書いてあって、ロードしてインストールしようとしたのですが、
plamo ではどうもうまく make が通らない状態のようですので、ご注意くださいませ。
サウンドカード
WindowsMeで、
Crystal Sound Fusion CS4281 WDM Audio
ということだったので、すぐにいけるとか思いましたら、
kernel2.2.16 だと cs4232 はサポートしていますが、
cs4281 はkernel 2.2.17 以降からのサポートになるようです。
Plamo のCD のほうに2.2.17 へのパッチがあったので、それを利用しました。
このパッチをあてて、
bzip2 -dc patch-2.2.17.bz2 | patch -p0
make menuconfig をしてみると、
Sound card support | |
| | Crystal CS4281 (NEW)
Crystal CS4281 が入っていました。
最初モジュールでコンパイルしたみましたら、
ad1848/cs4248 codec driver Copyright (C) by Hannu Savolainen 1993-1996
という1行がはいってきたのでラッキー!
妙な数字が出ているのはモジュールをロードするために、
rc.local に適当な記述をいれているためですね。でもハードは認識できるので、
ここまでくればもうほぼ成功。
/usr/src/linux/Documentation/sound こちらのほうには、
CS4232 この説明しかないのでちょっとうまくいかなくて、
カーネル組み込みでコンパイルしてみましたら、
起動時メッセージでカードが認識できました。
cs4281: version 0.9 time 21:15:31 Dec 17 2000
PCI: Enabling bus mastering for device 00:40
Sound initialization started
Sound initialization complete
ということで irq5 にカードがあるので、
音楽 CD を試してみましたら、 OK
harry:~$ cat /proc/interrupts
CPU0
0: 16553 XT-PIC timer
1: 323 XT-PIC keyboard
2: 0 XT-PIC cascade
5: 0 XT-PIC Crystal CS4281
10: 25 XT-PIC eth0
12: 3092 XT-PIC PS/2 Mouse
13: 1 XT-PIC fpu
14: 3095 XT-PIC ide0
15: 6 XT-PIC ide1
テスト
音楽 CD は grip を使って再生。
mp3データは、mpg123
/usr/doc/sox-11gamma-cb3 ここに english.au ファイルがあったので、
これを sox で
sox english.au english.wav
wav に変換して、
harry:~$ play english.wav これOK
harry:~$ play sound9.wav 手持ちのもともと wav ファイルもこれで OK
プリンタ(リモートプリンタの設定)
ノート本体のほうの /etc/printcap
PS|remote PS printer:\
:lp=/dev/null:\
:sd=/var/spool/lp/:\
:rm=jeanne:\
:rp=PS:\
:mx#0:\
:sh:
リモートマシンの /etc/printcap
PS|remote PS printer:\
:lp=/dev/lp0:\
:sd=/usr/spool/lp:\
:lf=/usr/spool/lp/log:\
:af=/usr/spool/lp/acct:\
:if=/usr/local/bin/lp-if:\
:mx#0:\
:sh:
lpr -PPS ファイル名
このファイルの先頭に戻る
I enjyoy Linux
Linux 関連ページの目次にもどる。
back to Home Page(English)
ホームページに戻る(日本語)