VineLinux3.2でminiPCI無線モジュールIntel BG2200を使う

カーネルの再構築なしに設定できる方法があったのでメモ。

参考サイトはこちら:UNIXな生活

最初の条件として、VineLinuxが3.2になっている必要があるかもです(3.1のときは前にkernel再構築したときにipw2200関係のモジュールが有効になってなかったような)。

結論としては、ipw2200をコンパイルするときにkernelのソースとconfigを読みにいっているらしく、configだけ準備しておけばコンパイルが通るという仕組みだそうです。

ともかく、LOOXではVine3.2インストール直後だとインターネットにすら接続できないので、ひとまずすぐに動作できるLANカードなりを用意してインターネットに接続できる状態にしておきます。

まずは必要なパッケージをapt-getしてきます。

# apt-get update
# apt-get install kernel-source kernel-headers

もし「最新のバージョンが既にインストールされています」と出た場合でも、必ずインストールするようにしたほうがよいです(そのままやってたらkernelpanic起こした)。

# apt-get –reinstall install パッケージ名

準備ができたら、configを適用します。たぶんoldconfigでいけると思うのですが、上記のサイトの手順に従い、X上から行いました。

# startx
# cd /usr/src/linux
# make xconfig
GUIでkernelのconfig画面が出ますので、右下のほうにある「Load Configilation from File」をクリック。
パスを聞かれますので、「config/kernel-2.4.31-i686.config」と書いて読み込ませる。
特に設定変更せずにそのまま画面右下にある「Save and Exit」をクリックして終了。

kernel側の準備はこれで完了です。

次に、ipw2200のソース・パッチ・ファームウェアを取ってきます。
ipw2200はもともとkernel2.6用なので、kernel2.4で動作するパッチと、それを基準にソースとファームウェアを取ってきます。

# cd /usr/src/vine/SOURCES ※ソース関係はここに置いておく(気分的に)
※ソースコード
# wget http://peterhost.dl.sourceforge.net/sourceforge/ipw2200/ipw2200-1.0.1.tgz ※これはpeterhostのミラーサーバの例
※kernel2.4バックパッチ
# wget http://dellaric.home.cern.ch/dellaric/ipw2200/ipw2200-1.0.1-3.patch
# w3m http://ipw2200.sourceforge.net/firmware.php?fid=4
※w3mでアクセスして、下のほうにあるI Agreeをクリック。先ほど指定したディレクトリにダウンロードされます(wgetできない)。

ソースのインストール前にファームウェアの処理をしておきます。

# tar xzvf ipw2200-fw-2.2.tgz ※ファームウェアの解凍
# mv ipw-2.2* /usr/lib/murasaki/firmware.d ※解凍したものをfirmware.dに移動

あとは、ソースの解凍、パッチ適用、コンパイル、インストールします。

# tar xzvf ipw2200-1.0.1.tgz ※ソースの解凍
# cd ipw2200-1.0.1 ※解凍してできたディレクトリに移動
# patch < ../ipw2200-1.0.1-3.patch ※パッチの適用
# make clean
# make ※コンパイル時に「重複したconst」のような警告が数個連続で出ますが、これは無視していいです。それ以外の警告が出た場合は注意したほうがいいです。
# make install

これで一連の作業は完了です。次にipw2200の認識とネットワークの設定を行います。

まずはネットワークの設定。ここではインターネットへの接続確認だけですので、DHCP指定します。

# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=no
BOOTPROTO=dhcp
ESSID=無線ルータか無線アクセスポイントのESSID
KEY=WEPを使っている場合のWEPKEY ※テキスト認証の場合はパスワード先頭に「s:」をつけます。

eth1としているのは、ipw2200を設定する前に繋げたネットワークデバイスがeth0として既に占有しているからで、今後ipw2200しか使わないのであればeth0でいいかもしれません。

次に、デバイスの認識を行います。

# vi /etc/modules.conf
alias eth1 ipw2200 ※任意の場所に追加
# ifdown eth0 ※接続中のネットワークを落とす
# modprobe ipw2200 ※ipw2200の認識
# ifup eth1 ※ネットワークの確立
# ifconfig ※ここでDHCPがIPを取得できていれば成功

これでipw2200が使用できるはずです。
私の場合、起動時に取りあえずipw2200のデバイス認識されるように、rc.localに1行追加しています。

# vi /etc/rc.d/rc.local
sudo /sbin/modprobe ipw2200

Vineのインストール直後はsudoを許可するユーザが設定されていませんが、この設定は後日。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中