Solaris 10の入ったノートPCでモバイルする場合、一番問題になるのが通信環境です。市場に出回っているモバイルデータ通信用メディア(auのPacketWIN、WillcomのAirH”等)は殆どがWindowsやMacintoshしかサポートしていません。それら以外のOSでモバイル通信をしようとすることはそれなりの技術力とノウハウが必要となり、なかなかWindowsやMacintosh以外の環境でモバイルをする人を見かけることがありません。
モバイルデータ通信用メディア(auのPacketWIN、WillcomのAirH”等)は、PCカード又はコンパクトフラッシュタイプのカードが多いので、今回はそれらを使用してモバイル環境を作ることにしますが、このPCカードが現在のSolaris 10(11/06も含む)では上手く扱うことが出来ません。その為、まずOpenSolarisコミュニティから「Cardbus Driver With Support For 32-bit PC Cards」を入手します。
ここで注意しなければならないのは、Cardbus Driver With Support For 32-bit PC Cardsで用意されているドライバの中のVersion 0.2(works with S10 and pre-snv_37)を使わなければならないことです。新しいバージョンがあるのに何故と思いますが、Solarisのビルドのバージョンによって使えない機能がありますので、Solaris 10や古いビルドのOpenSolarisを使う場合には、Version 0.2を使うことになる訳です。これを間違えてVersion 0.2より新しいものを使用した場合、PCカードデバイスが上手く動作しないことがありますので、動きが変だという場合はまずここを疑って下さい。
ダウンロードしたドライバパッケージは、以下の手順で展開とインストールを行います。
# gzip -cd cardbus-0.2bin.tar.gz | tar xvf -
# cd cardbus-v0.2/
# ./Install
post snv14 detected
=> Backing up existing 32-bit drivers
/kernel/drv/pcic.bak
/kernel/drv/pcic.conf.bak
/kernel/misc/pcmcia.bak
<= Done
=> Installing new 32-bit drivers
/kernel/drv/pcic
/kernel/drv/pcic.conf
/kernel/misc/cardbus
/kernel/misc/pcmcia
<= Done
=> Backing up existing 64-bit drivers
/kernel/drv/amd64/pcic.bak
/kernel/misc/amd64/pcmcia.bak
<= Done
=> Installing new 64-bit drivers
/kernel/drv/amd64/pcic
/kernel/misc/amd64/cardbus
/kernel/misc/amd64/pcmcia
<= Done
Please reboot your system.
#
PCカードコントローラによっては、このドライバを適用しても動作しないものがあります。動作するかしないかはドライバのWebページに記載されている「Laptops known to work」を参照し、そこに記載されているノートPCで使われているPCカードコントローラと自分のSolaris 10をインストールしたノートPCのPCカードコントローラを比較する等して、調べると良いでしょう。該当するものが無い場合、ドライバを適用しても動作しない確率が高くなります。
prtconf -vでデバイスは認識されているのにtip /dev/cua/pc0を実行すると固まってしまう場合、使用しているノートPCのカードサービスが上手く動作出来ていません。(カードサービスがdriver not attachedになっているはずです。)もしこの様な状態になった場合、乱暴な方法ですが、PCカードを抜くと固まった状態から抜け出すことが出来ます。
$ pppd call prin
Calling prin
chat: Jan 07 00:12:15 CONNECT 115200
Serial connection established.
Using interface sppp0
Connect: sppp0 <--> /dev/cua/pc0
LCP: Rcvd Code-Reject for Identification id 240
local IP address xxx.yyy.zzz.www
remote IP address www.xxx.yyy.zzz
primary DNS address yyy.zzz.www.xxx
#
この様に、あっと言う間にダイヤルアップが出来ました。 (auの場合は、pppd call au ですね。)
今回はOpenSolarisコミュニティのパッケージを使用しましたが、動作の可否はOpenSolarisコミュニティに報告をしましょう。これからのドライバ等の改善に役立つことでしょう。
またいつも書いていますが、新しいハードウエアにSolaris 10のインストールが出来ましたら、是非HCL for Solaris OSに報告しましょう。これからチャレンジする人には、強い助っ人になることと思います。サーバだけではなくクライアントでもSolaris、広がるといいですね。