passive log strage

バイク , モバイルガジェット , アウトドア用品 , 腕時計 ・・・等。

La Foneraで遊ぶ その5

パッケージの導入

素の状態のOpenWrtは極めてシンプルな構成になっている。シンプルというにはさすがに何も無さすぎるので、思いつくパッケージを導入してみた。ipkgが導入されている環境なので、ipkgのパッケージリストに記載されているものからインストールする。インストール前に仙石浩明氏のipkg Feedを追加。


  • vim → 「ipkg install vim
  • ntpclient → 「ipkg install ntpclient」
  • microperl → 「ipkg install microperl」
  • pure-ftpd → 「ipkg install pure-ftpd」

vimは完全に自分の趣味。perlはフルセットのperlがipkgに無いのでこの「いかにも簡易版」な名前のmicroperlというモジュールを導入したが、とりあえずすぐ使う予定は無い。必要になったら考えることにする(投げやりだな)。
wgetとzip関係はbusyboxに内蔵されていた。あと欲しいとすればscreenか。自分で作った「.screen」がどっかに残ってるはずだが・・・みつけたらそのとき導入(また書き直すのが面倒なだけ)。さすがにw3mやlhaは無いか。ほかにもkismetとかfonera-mp3dとかなかなか面白そうなモジュールがリストに挙がっているが、まずは最低限必要なものからそろえなきゃ。

特に、シャットダウンするとシステム日付がリセットされるため、ntpclientは必須コマンドだ。元々インターネット接続がかならずされる前提のハードウェアであり、起動時にntpで時間合わせを行うため、内蔵システム時計を持っていないようだ。init.dおよびrc.dに追加しておく。

touch /etc/init.d/ntpclient
chmod a+x /etc/init.d/ntpclient
vim /etc/init.d/ntpclient
   :
cd /etc/rc.d
ln -s /etc/init.d/ntpclient ./S50ntpclient

/etc/init.d/ntpclientの中身。

#!/bin/sh
/usr/sbin/ntpclient -h ntp3.jst.mfeed.ad.jp -s

ntpclientについてはuci の設定にntpclientというエントリが存在している。「uci show」コマンドにて確認すると

ntpclient.cfg1=ntpclient
ntpclient.cfg1.TYPE=ntpclient
ntpclient.cfg1.hostname=pool.ntp.org
ntpclient.cfg1.port=123
ntpclient.cfg1.count=1
ntpclient.cfg2=ntpclient
ntpclient.cfg2.TYPE=ntpclient
ntpclient.cfg2.hostname=ntp.ubuntu.com
ntpclient.cfg2.port=123
ntpclient.cfg2.count=1

となっている。ただ、実際にntpclientコマンドがこれを見ているかどうかはわからないので、起動コマンドをベタに記述しておくことにした。

そうそう、システム時間といえば、タイムゾーンも設定しなくちゃ。通常のLinuxなら「/etc/localtime」があるんだが、OpenWrtのデフォルトで無いってことは、書いておいてもシステムは多分読まないだろうなぁ。もちろん「/usr/share/zoneinfo」も存在しない。
と思ったら、OpenWrt - PukiWikiによるとこうするらしい。

touch /etc/config/timezone
vim /etc/config/timezone
	:
touch /etc/TZ
vim /etc/TZ

/etc/config/timezoneの内容

config timezone
	option posixtz JST-9
	option zoneinfo 'Asia/Tokyo'	

/etc/TZの内容

JST-9

以上の2ファイルを追加するだけで、dateを叩けばすぐにJSTで表示される。この設定方法は知らなかった。

とりあえず

Linuxマシンとして最低限な環境はあらかた出来上がったと思う。といっても、今回は本当に最低限な環境に漕ぎ着けた段階で、La Fonerafoneraらしいおいしい所はまったく手がついていない。なにせOpenWrtを導入してからWiFiを一度も起動していない。今後は無線LANルータとしてのハードウェアでいろいろ遊んでみたいと思う。