第2回IPv6Mobile-testbedミーティングIPv6Mobile-testbed meeting #2

本日、モバイルテストベッド構築のミーティングが行われました。

このミーティングは、小型PC10台を用いてIPv6のモバイルテストベッド環境を構築するためのものです。
Dの野口さんの呼びかけによって、M1から4人のメンバーが参加しています。

第1回のミーティングは6月5日に行われ、構築するテストベッドのトポロジなどの確認や、今後の作業予定のリストアップなどが行われました。

本日開催された2回目のミーティングで行ったのは、小型PCへのGPSドライバのオートロード設定、拡張WLANチャネルの有効化などです。

今回は、GPSドライバのオートロード設定について以下にまとめておきたいと思います。

今回用いたGPSモジュールは、Garmin社製の「GPS18x」です。

SH380016

用意された小型PCでは、デフォルトでこのモジュールのUSB-シリアル接続を認識できないため、ドライバの設定を行う必要があります。
以下に行った作業を示します。
(OSはUbuntu-server 11.10)

1.カーネルのコンフィグファイルの確認

まずは、カーネルのコンフィグファイルの確認です。
コンフィグのファイル名は、/boot/config-(バージョン名)です。
(今回は/boot//config-3.0.0-12-genericでした)

このファイルの中から、CONFIG_USB_SERIALとCONFIG_USB_SERIAL_GARMINの項目を探します。

 

2つの項目の値は、「m」になっています。

これらの値は、

y:カーネルにあらかじめ組み込む機能として扱う (カーネルの一部としてコンパイル)
m:カーネルモジュール 必要に応じてロード
n:カーネルとしてもカーネルモジュールとしても利用しない

を表します。

Linuxではカーネルが利用する様々な機能をモジュール化し、最小限の機能以外は管理者が必要に応じてモジュールをロードする構成となっています。
今回利用するGPS18xのドライバなどは、「必要に応じてロードされるモジュール」の最たる例です。

そのためコンフィグファイル内の設定値は2つとも「m」であり、OS起動時にGPSドライバがロードされないということになります。
試しにlsmodコマンドで確認してみても、これらのドライバは表示に現れません。
そこで、これらのドライバがデフォルトでロードされるように設定します。

2.blacklist.confファイルの編集
通常、利用する場合に他のモジュールと競合する可能性のあるモジュールなどは
/etc/modprobe.d/の下にあるblacklist.confというファイルによって起動時の読み込みが禁止されています。

今回使用したGPS18xのドライバもその例に当てはまります。

そこで、このファイルを編集することで起動時のロードを有効化します。

/etc/modprobe.d/blacklist.conf

 ↓

 ここで一度リブートを行い、その後lsmodコマンドで確認してみました。

見事、USBシリアル変換と、GPSドライバのモジュールが自動でロードされました!!

この後GPS18Xからの送信データを確認したり、拡張WLANチャンネルの有効化などを行いましたが、
M1のメンバーの多くにとってはあまり慣れていないコマンドも多く、そのたびに野口さんが丁寧に解説する様子は、さながらLinuxの講習会!?

SH380015

無事設定は完了し、今回のミーティングは終了しました。

次回はアドホック通信のテストを行います。
作業も徐々に進行しており、今から次回のミーティングが楽しみですね。

BY Tsubasa TERAMOTO