ThinPad T20 (2647-64J) にFreeBSDを入れてみました。
毎回悩むのがHDD の区画割り。まぁ、2つも3つもOS を突っ込もうとするから こんがらがるだけ(笑)
とりあえず今回はこんな風にしてみた。
う〜ん、Windows2000 が入らん(笑) やっぱり、今時 6GB じゃちと足らん。 今回は「インストールの確認」ということにして、後でHDD 換装することに 決定。
区画割りとFAT16 領域のフォーマットは Warp4 のユーティリティディスクで。 まぁ、この辺は「手になじんでいる道具が一番じゃね〜の?」ということ(笑)
お約束として、 ハイバネーションユーティリティ は事前にgetしとく。
既に焼いてあった4.4-RELEASE の ISO-Image を ウルトラベイのCD-ROM ドライブに突っ込んで、何事もなく sysinstall 画面に。X は4.x を 入れたかったので"kern-developer"を選択してインストール開始。
20分少々でインストール完了。勝手知ったるFreeBSD とはいえ、大昔にFreeBSD 2.0.xをEPSONの98x1互換NOTEにフロッピーを取っ換え引っ換えして突っ込んだ 頃を思うと、いい世の中になったなぁ…としみじみ思う。
再起動してdmesg を確認。こんな感じ。
Copyright (c) 1992-2001 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 4.4-RELEASE #0: Tue Sep 18 11:57:08 PDT 2001 murray@builder.FreeBSD.org:/usr/src/sys/compile/GENERIC Timecounter "i8254" frequency 1193182 Hz CPU: Pentium III/Pentium III Xeon/Celeron (647.19-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x683 Stepping = 3 Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE> real memory = 268369920 (262080K bytes) avail memory = 256708608 (250692K bytes) Preloaded elf kernel "kernel" at 0xc0480000. Pentium Pro MTRR support enabled md0: Malloc disk Using $PIR table, 11 entries at 0xc00fdee0 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Intel 82443BX (440 BX) host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib1: <Intel 82443BX (440 BX) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <S3 model 8c12 graphics accelerator> at 0.0 irq 11 pcic0: <TI PCI-1450 PCI-CardBus Bridge> mem 0x50000000-0x50000fff irq 11 at device 2.0 on pci0 pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][FUNC pci int + CSC serial isa irq] pccard0: <PC Card bus (classic)> on pcic0 pcic1: <TI PCI-1450 PCI-CardBus Bridge> mem 0x50100000-0x50100fff irq 11 at device 2.1 on pci0 pcic1: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][FUNC pci int + CSC serial isa irq] pccard1: <PC Card bus (classic)> on pcic1 fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0x1800-0x183f mem 0xe8100000-0xe811ffff,0xe8120000-0xe8120fff irq 11 at device 3.0 on pci0 fxp0: Ethernet address 00:d0:b7:ad:89:56 inphy0: <i82555 10/100 media interface> on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: <unknown card> (vendor=0x115d, dev=0x000c) at 3.1 irq 11 pci0: <unknown card> (vendor=0x1013, dev=0x6003) at 5.0 irq 11 isab0: <Intel 82371AB PCI to ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel PIIX4 ATA33 controller> port 0x1850-0x185f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0x1860-0x187f irq 11 at device 7.2 on pci0 usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered ugen0: SHARP AD-PCR2, rev 1.10/1.00, addr 2 chip1: <Intel 82371AB Power management controller> port 0x1040-0x104f at device 7.3 on pci0 orm0: <Option ROMs> at iomem 0xc0000-0xcbfff,0xcc000-0xcd7ff,0xe0000-0xeffff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/2 mouse, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0: configured irq 4 not in bitmap of probed irqs 0 sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 8250 sio1: configured irq 3 not in bitmap of probed irqs 0 ppc0: cannot reserve I/O port range ad0: 5729MB <IBM-DARA-206000> [12416/15/63] at ata0-master UDMA33 acd0: CDROM <CD-224E> at ata1-master using PIO4apm が無いじゃん! 当然 zzz とかやっても"Device not configured" となる。 なんで?
Web上の情報や手持ちの雑誌(BSD
Magazineとか、FreeBSD Press
とか、Software Designとかですね)
を漁っても、GENERIC カーネルで問題が生じる話はない。ThinkPadで気を付ける
のは、BIOSの
バージョンと、ユーティリティであらかじめハイバネーションファイルを
作っておくことくらいしか見当たらない。
こうなるとソース読めない人間に出来ることは、
手当たり次第に試してみることだけ。
もうヤケクソ。おうちサーバーとして稼働しているデスクトップ機は、4-stable
のソースツリーを週1回の割合でCVSupで追っかけているので、最新のソースツ
リーで直っていることを期待してupdateすることにする。
実はこのサーバー(Celeron333MHz)よりもT20(PenIII650MHz)の方がCPUパワーは
あるんだが(笑)、ファイルをいちいちコピーするのも面倒なので、サーバー側で
buildworld する。
このあたり、486DX2-50MHzなPC-9821をgatewayに仕立てる時にノウハウを
蓄えたんで、update作業には全く問題なし。具体的には
Copyright (c) 1992-2001 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 4.4-STABLE #1: Mon Oct 15 23:48:44 JST 2001 kenn@duck.vercss.or.jp:/usr/obj/usr/src/sys/duck Timecounter "i8254" frequency 1193182 Hz CPU: Pentium III/Pentium III Xeon/Celeron (647.19-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x683 Stepping = 3 Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE> real memory = 268369920 (262080K bytes) avail memory = 256258048 (250252K bytes) Preloaded elf kernel "kernel" at 0xc04ed000. netsmb_dev: loaded Pentium Pro MTRR support enabled md0: Malloc disk Using $PIR table, 11 entries at 0xc00fdee0 apm0: <APM BIOS> on motherboard apm: found APM BIOS v1.2, connected at v1.2 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Intel 82443BX (440 BX) host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib1: <Intel 82443BX (440 BX) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <S3 model 8c12 graphics accelerator> at 0.0 irq 11 pcic0: <TI PCI-1450 PCI-CardBus Bridge> mem 0x50000000-0x50000fff irq 11 at device 2.0 on pci0 pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][FUNC pci int + CSC serial isa irq] pccard0: <PC Card bus (classic)> on pcic0 pcic1: <TI PCI-1450 PCI-CardBus Bridge> mem 0x50100000-0x50100fff irq 11 at device 2.1 on pci0 pcic1: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][FUNC pci int + CSC serial isa irq] pccard1: <PC Card bus (classic)> on pcic1 fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0x1800-0x183f mem 0xe8100000-0xe811ffff,0xe8120000-0xe8120fff irq 11 at device 3.0 on pci0 fxp0: Ethernet address 00:d0:b7:ad:89:56 inphy0: <i82555 10/100 media interface> on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: <unknown card> (vendor=0x115d, dev=0x000c) at 3.1 irq 11 csa0: <CS4280/CS4614/CS4622/CS4624/CS4630> mem 0xe8000000-0xe80fffff,0xe8122000-0xe8122fff irq 11 at device 5.0 on pci0 csa: card is Thinkpad 600X/A20/T20 pcm0: <CS461x PCM Audio> on csa0 isab0: <Intel 82371AB PCI to ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel PIIX4 ATA33 controller> port 0x1850-0x185f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0x1860-0x187f irq 11 at device 7.2 on pci0 usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered intpm0: <Intel 82371AB Power management controller> port 0x1040-0x104f irq 9 at device 7.3 on pci0 intpm0: I/O mapped 1040 intpm0: intr IRQ 9 enabled revision 0 smbus0: <System Management Bus> on intsmb0 smb0: <SMBus general purpose I/O> on smbus0 intpm0: PM I/O mapped 1000 orm0: <Option ROMs> at iomem 0xc0000-0xcbfff,0xcc000-0xcd7ff,0xe0000-0xeffff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/2 mouse, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0: configured irq 4 not in bitmap of probed irqs 0 sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 8250 sio1: configured irq 3 not in bitmap of probed irqs 0 ppc0: cannot reserve I/O port range ad0: 5729MB <IBM-DARA-206000> [12416/15/63] at ata0-master UDMA33 acd0: CDROM <CD-224E> at ata1-master using PIO4おお、認識してるよ、apm。何に使うのか判らないsmbusもしっかり認識されてる みたい。
お次はX。予定通り4.1.0をportsから入れる。packageにしないのは、これまた
趣味の問題。"make install" で後は寝てればインストールされてるんだから、
portsでもpackagesでも手間は大して変わらない。変わるのはコンパイル
オプションだけ。そしてそこが一番大事(笑)。
当初はx11/XFree86-4のportsだけローカルHDDにコピーしてbuild
しようとしたのだが、なんとbuild中にルートパーティション(多分/tmp)が溢れた。
installkernel で出来た /kernel.old や /modules.old/
を削除してなかったのが敗因と思われる。
ちなみにXFree86 4.1.0 にはカーネルのソースを参照している
部分があるようなので、ソースを展開していないとmakeが止まる
ため注意が必要(確かDRI絡みのとこ)。
無事インストールが済めば、後は
XFree86 -configureでXF86Config のひな形を作って、それをいじって完了。おぉ、動く動く。 ちなみにXF86Configはこちら。
<お約束>
上記のXF86Configは、あくまで「我が家のT20はこれでうまく動いてるように見える」
というだけなので、これで動かなくても、はたまたモニタが壊れても
私は一切責任を負いません。自己責任でどうぞ。
</お約束>