#norelated
* Zaptelのコンパイル [#pbd253d0]

** まずは展開 [#se78f8d9]
一応、suになって、tarボールを任意のディレクトリに展開し、そこに移動。
 $su -
 #cd /usr/local/src
 #tar zxvf /ダウンロードディレクトリ/zaptel-1.4.6.tar.gz .
 #cd zaptel-1.4.6

** configureの実行 [#h29b5df8]
 #./configure

** インストールモジュールの選択 [#nf9f67c7]
Zaptelが用意しているモジュールのうち、必要なモジュールだけを選択するために make menuselectを実行(Zaptelのztdummyモジュールだけが必要)
 #make menuselect


カーソルキーでkernelを選択しenter。
    *************************************
           Zaptel Module Selection
    *************************************
     
             Press 'h' for help.
    
       ---> 1.  Kernel Modules
            2.  Utilities
            3.  Binary Firmware Packages


ztdummyのみ選択。スペースキーで選択、非選択のトグル。
    *************************************
           Zaptel Module Selection
    *************************************
    
             Press 'h' for help.
    
            [ ] 1.  pciradio
            [ ] 2.  tor2
            [ ] 3.  torisa
            [ ] 4.  wcfxo
            [ ] 5.  wct1xxp
            [ ] 6.  wct4xxp
            < > 7.  wctc4xxp
            [ ] 8.  wctdm
            [ ] 9.  wctdm24xxp
            [ ] 10. wcte11xp
            [ ] 11. wcte12xp
            [ ] 12. wcusb
            [ ] 13. xpp
            < > 14. ztd-eth
            < > 15. ztd-loc
            [*] 16. ztdummy
            [ ] 17. ztdynamic
            [ ] 18. zttranscode


x で保存して終了。

** make & make install [#f86356a9]
 #make
 #make install

なにも問題なく、makeもmake installも完了。~
make configを実行すると /etc/rc.d/init.d/zaptelを入れてくれるので便利なので実行しておく。(もちろんchkconfigも効くようになる)

 #make config

*** udev動作 [#ad1dbaa8]
Zaptelはudev用のルールを用意してくれており、"asterisk"という名前を利用するので、そのアカウントを作っておく。
  adduser -u 5001 -s /sbin/nologin -d /var/lib/asterisk asterisk

Zaptelをインストールするとudevルールファイル(/etc/udev/rules.d/zaptel.rules)が設定されるので、この状態でzaptelを再起動すれば、udevとして動作するはず。。。。。~
なのだが、実は動作しない。~

どうも、/etc/udev/rules.d/50-udev.rulesにも設定が書かれているようで、こちらの書式が間違っているようだ。~
udevは/etc/udev/rules.d/ディレクトリ内のすべてのファイルを読み込んで設定を行うので、この状態では設定が2つになり、これによって期待したとおりの動作がされない。~
なので/etc/udev/rules.d/50-udev.rulesにあるzaptelの設定をコメントアウトしてしまう。

 /etc/udev/rules.d/50-udev.rules
  KERNEL=="zapctl",              NAME="zap/ctl"
  KERNEL=="zaptimer",            NAME="zap/timer"
  KERNEL=="zapchannel",          NAME="zap/channel"
  KERNEL=="zappseudo",           NAME="zap/pseudo"
  KERNEL=="zap[0-9]*",           NAME="zap/%n"
     ↓
  #KERNEL=="zapctl",              NAME="zap/ctl"
  #KERNEL=="zaptimer",            NAME="zap/timer"
  #KERNEL=="zapchannel",          NAME="zap/channel"
  #KERNEL=="zappseudo",           NAME="zap/pseudo"
  #KERNEL=="zap[0-9]*",           NAME="zap/%n"

これで、/etc/init.d/zaptel を再起動すると
 #ls -l /dev/zap
 crw-rw---- 1 asterisk asterisk 196, 254 11月 22 03:28 channel
 crw-rw---- 1 asterisk asterisk 196,   0 11月 22 03:28 ctl
 crw-rw---- 1 asterisk asterisk 196, 255 11月 22 03:28 pseudo
 crw-rw---- 1 asterisk asterisk 196, 253 11月 22 03:28 timer
 crw-rw---- 1 asterisk asterisk 196, 250 11月 22 03:28 transcode
となり、一件落着。

&color(red){※最近、zaptel-1.4.8をインストールしたところ、この問題は解消されているようです。};


*** OS起動時にサービス開始 [#q3265073]
zaptelはasteriskに先立って実行しておかなければならないものなので、chkconfigでOS起動時に自動的に動くように設定しておく。
 #chkconfig zaptel on


*** kernelのアップデート時 [#tcca0708]
&color(red){※2008.05.20追記};~
Linuxのkernelをupdateした後、OSを再起動するとzaptelのドライバが動かないようである。~
うちでの現象はCentOS5の2.6.18-53 を 2.6.18-53.1.13 にyumでupdateして再起動したときに発生。~
make installしなおしたらば、また動いたので、zaptel自身にkernel依存な部分があるようである。~
kernel自身の大きなバージョンアップ時は最初からインストールしなおしたほうが無難だと思われる。~

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS