Voyage Asterisk

2007年6月22日 (金) 17:49時点におけるTakahashi (トーク | 投稿記録)による版 (Asterisk)

Voyage用Asteriskの解説
VoyageはDebian派生のためaptでAsteriskを入手できますが、バージョンが古いものしかないこととCF向けに調整されていません。そこでVoyage用のAsteriskを用意しました。
まずはVoyage Linuxのページを見て、Voyage Linuxをインストールしてください。

なお当然ですが起動した後はroマウントされていますので、入手や展開などはremountrwを実行してから行います。

目次

グループとユーザの登録

"asterisk"で動作させるのなら、グループとユーザを登録しておきます。UID,GID=5060は趣味です :)

# groupadd -g 5060 asterisk
# useradd -g 5060 -u 5060 -d /var/lib/asterisk -s /sbin/nologin asterisk

Zaptel

ftp://ftp.voip-info.jp/asterisk/voyage/zaptel-1.4.3_voyage.tar.gz
ルートディレクトリで展開してください。 展開したならばdepmod -aldconfigを実行しておいてください。
udevの関係でAsteriskをユーザ:asterisk、グループ:asteriskで実行する場合にはファイルの調整が必要です。
/etc/udev/permissions.rules のzaptelのエントリを以下のように修正します。

SUBSYSTEM=="zaptel",                            GROUP="dialout"
             ↓
SUBSYSTEM=="zaptel",    OWNER="asterisk",       GROUP="asterisk"

修正した後は /etc/init.d/udev restart でudevデーモンを再起動しておきます。

Asterisk

ftp://ftp.voip-info.jp/asterisk/voyage/asterisk-1.4.5_voyage.tar.gz
日本語音声対応済み、ひかり電話のRT-200NE対応パッチ適用済みです。入手したならばルートディレクトリへ展開してください。

Asteriskを動作させるにはパッケージの追加が必要です。

# apt-get install libstdc++5

を実行してください。
再起動するか/etc/init.d/asterisk startで起動するはずです。
CFのROマウントから起動するため、/var/spool/asteriskや/var/log/asteriskはtmpfs上にあります。そのまま使い続けるといずれメモリ不足で落ちるはずですので注意してください。
AsteriskのログはSyslogに頼っています。Asterisk自体ではログを吐かないため、ログを確認する際には/var/log/messagesを見てください。ログもtmpfs上なので継続使用には注意します。Syslogを別なマシンに飛ばすなどすれば良いでしょう。

  • 別パーティションの使用

Asterisk用に別なパーティションを作成するか例えばUSBメモリのような外部ストレージを使ってマウントしておくと、自動的にそれを使用します。設定の手順は以下の通りです。

  1. fdisk等でパーティションを作成し、mkfsします。tune2fs -c 0 <デバイス> でチェックを無効にします。
  2. /asteriskというディレクトリを作成します
  3. /etc/fstabに次の1行を追加しておきます。
/dev/hdb2       /asterisk     ext2    defaults,noatime,rw     0       0
  • 実行ユーザの変更

/etc/init.d/asteriskスクリプト内のAST_USERとAST_GROUPのコメントを外してください。ディレクトリパーミッション等も自動的に適切に調整される(はず)です。

インストール後の状況

1GBのCFを使用しルートとして600MB程度を割り当てた場合のディスク使用量は概ね次のようになっています。

voyage:/# df -H
Filesystem             Size   Used  Avail Use% Mounted on
rootfs                 600M   165M   405M  29% /
udev                    11M    29k    11M   1% /dev
/dev/hdb1              600M   165M   405M  29% /
/dev/hdb1              600M   165M   405M  29% /dev/.static/dev
tmpfs                   61M      0    61M   0% /lib/init/rw
tmpfs                   61M   4.1k    61M   1% /dev/shm
tmpfs                  8.4M   435k   8.0M   6% /rw

chan_cellphone

実はBluetoothドングルを挿せば携帯ゲートウェイとして動作するようにしてあります。なお、このAsteriskに含まれるのは現在のtrunkのadd-onではなく、Asterisk 1.4.4用のchan_cellphoneです。
が・・・設定はかなり面倒です。
設定方法はちんたら作成の予定。