Debian GNU/Linux 5.0にAsterisk 1.6をインストールする
Debian GNU/Linux 5.0にAsterisk 1.6をインストールします。
Debian GNU/Linux 5.0のインストール
Debian GNU/Linux 5.0をインストールします。
Debian GNU/Linux 5.0をインストールする
Asteriskコンパイル環境の整備
Asteriskのコンパイルができるように以下のパッケージを追加します。
gcc
g++
libc6-dev
make
linux-libc-dev
libncurses5-dev
linux-source-2.6.26
ncurses-dev
perl-modules
patch
# apt-get install gcc g++ libc6-dev make libncurses5-dev linux-libc-dev linux-source-2.6.26 ncurses-dev perl-modules patch
DAHDIのインストール
DAHDIコンパイルの準備
DAHDIコンパイル環境の準備をします。
linux-headersをインストールします。
# apt-get install linux-headers-2.6.26-2-686
linux-kbuild-2.6.26がいっしょに付いてきていることを確認します。
debian:/home/ono# uname -r
2.6.26-2-686
debian:/home/ono# apt-get install linux-headers-2.6.26-2-686
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の特別パッケージがインストールされます:
cpp-4.1 gcc-4.1 gcc-4.1-base linux-headers-2.6.26-2-common linux-kbuild-2.6.26
提案パッケージ:
gcc-4.1-locales gcc-4.1-multilib gcc-4.1-doc libmudflap0-dev
以下のパッケージが新たにインストールされます:
cpp-4.1 gcc-4.1 gcc-4.1-base linux-headers-2.6.26-2-686 linux-headers-2.6.26-2-common
linux-kbuild-2.6.26
アップグレード: 0 個、新規インストール: 6 個、削除: 0 個、保留: 0 個。
7361kB のアーカイブを取得する必要があります。
この操作後に追加で 41.3MB のディスク容量が消費されます。
続行しますか [Y/n]? y
取得:1 http://ftp.riken.jp lenny/main gcc-4.1-base 4.1.2-25 [207kB]
取得:2 http://ftp.riken.jp lenny/main cpp-4.1 4.1.2-25 [2317kB]
取得:3 http://ftp.riken.jp lenny/main gcc-4.1 4.1.2-25 [417kB]
取得:4 http://ftp.riken.jp lenny/main linux-kbuild-2.6.26 2.6.26-3 [194kB]
取得:5 http://security.debian.org lenny/updates/main linux-headers-2.6.26-2-common 2.6.26-26lenny1 [3812kB]
取得:6 http://security.debian.org lenny/updates/main linux-headers-2.6.26-2-686 2.6.26-26lenny1 [413kB]
7361kB を 25s で取得しました (294kB/s)
未選択パッケージ gcc-4.1-base を選択しています。
(データベースを読み込んでいます ... 現在 26467 個のファイルとディレクトリがインストールさ れています。)
(.../gcc-4.1-base_4.1.2-25_i386.deb から) gcc-4.1-base を展開しています...
未選択パッケージ cpp-4.1 を選択しています。
(.../cpp-4.1_4.1.2-25_i386.deb から) cpp-4.1 を展開しています...
未選択パッケージ gcc-4.1 を選択しています。
(.../gcc-4.1_4.1.2-25_i386.deb から) gcc-4.1 を展開しています...
未選択パッケージ linux-headers-2.6.26-2-common を選択しています。
(.../linux-headers-2.6.26-2-common_2.6.26-26lenny1_i386.deb から) linux-headers-2.6.26-2-common を展開しています...
未選択パッケージ linux-kbuild-2.6.26 を選択しています。
(.../linux-kbuild-2.6.26_2.6.26-3_i386.deb から) linux-kbuild-2.6.26 を展開しています...
未選択パッケージ linux-headers-2.6.26-2-686 を選択しています。
(.../linux-headers-2.6.26-2-686_2.6.26-26lenny1_i386.deb から) linux-headers-2.6.26-2-686 を展開しています...
man-db のトリガを処理しています ...
gcc-4.1-base (4.1.2-25) を設定しています ...
cpp-4.1 (4.1.2-25) を設定しています ...
gcc-4.1 (4.1.2-25) を設定しています ...
linux-headers-2.6.26-2-common (2.6.26-26lenny1) を設定しています ...
linux-kbuild-2.6.26 (2.6.26-3) を設定しています ...
linux-headers-2.6.26-2-686 (2.6.26-26lenny1) を設定しています ...
debian:/home/ono#
DAHDIの入手と展開
DAHDIは http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/ からダウンロードします。
/usr/src/にダウンロードします。
# cd /usr/src
DAHDIのソースをダウンロードします。
# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.4.0+2.4.0.tar.gz
DAHDIのソースを展開します。
# tar zxvf dahdi-linux-complete-2.4.0+2.4.0.tar.gz
# cd dahdi-linux-complete-2.4.0+2.4.0
dahdi_dummyだけを使えるようにします。
(dahdi_dummyだけあればMeetMeとIAXトランキングが動作可能になります。)
linux/drivers/dahdi/Kbuild を編集します。
元のファイルはコピーしておきます。
# cp linux/drivers/dahdi/Kbuild linux/drivers/dahdi/Kbuild.org
# nano linux/drivers/dahdi/Kbuild
必要ないものをコメントアウトします。
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI) += dahdi.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DUMMY) += dahdi_dummy.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC) += dahdi_dynamic.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_LOC) += dahdi_dynamic_loc.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_ETH) += dahdi_dynamic_eth.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_ETHMF) += dahdi_dynamic_ethmf.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TRANSCODE) += dahdi_transcode.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT4XXP) += wct4xxp/
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTC4XXP) += wctc4xxp/
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM24XXP) += wctdm24xxp/
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE12XP) += wcte12xp/
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM) += wctdm.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_VOICEBUS) += voicebus/
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCB4XXP) += wcb4xxp/
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT1XXP) += wct1xxp.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE11XP) += wcte11xp.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCFXO) += wcfxo.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TOR2) += tor2.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_PCIRADIO) += pciradio.o
#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPP) += xpp/
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_JPAH) += dahdi_echocan_jpah.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_STEVE) += dahdi_echocan_sec.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_STEVE2) += dahdi_echocan_sec2.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_KB1) += dahdi_echocan_kb1.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_MG2) += dahdi_echocan_mg2.o
obj-m += $(DAHDI_MODULES_EXTRA)
DAHDIのコンパイルとインストール
DAHDIをコンパイルしインストールします。
# cd d/usr/src/ahdi-linux-complete-2.4.0+2.4.0
# make
# make install
DAHDI Toolsの入手と展開
dahdi-toolsは http://downloads.digium.com/pub/telephony/dahdi-tools/ からダウンロードできます。
# cd /usr/src
# wget http://downloads.asterisk.org/pub/telephony/dahdi-tools/dahdi-tools-2.4.0.tar.gz
# tar zxvf dahdi-tools-2.4.0.tar.gz
# cd dahdi-tools-2.4.0
DAHDI Toolsのコンパイルとインストール
configure、makeを行います。
# ./configure
# make
make installとconfigを行います。
# make install
# make config
debian:/usr/src/dahdi-tools-2.4.0# make config install -D dahdi.init /etc/init.d/dahdi /usr/bin/install -c -D -m 644 init.conf.sample /etc/dahdi/init.conf /usr/bin/install -c -D -m 644 modules.sample /etc/dahdi/modules /usr/bin/install -c -D -m 644 xpp/genconf_parameters /etc/dahdi/genconf_parameters /usr/bin/install -c -D -m 644 modprobe.conf.sample /etc/modprobe.d/dahdi.conf /usr/bin/install -c -D -m 644 blacklist.sample /etc/modprobe.d/dahdi.blacklist.conf /usr/sbin/update-rc.d dahdi defaults 15 30 Adding system startup for /etc/init.d/dahdi ... /etc/rc0.d/K30dahdi -> ../init.d/dahdi /etc/rc1.d/K30dahdi -> ../init.d/dahdi /etc/rc6.d/K30dahdi -> ../init.d/dahdi /etc/rc2.d/S15dahdi -> ../init.d/dahdi /etc/rc3.d/S15dahdi -> ../init.d/dahdi /etc/rc4.d/S15dahdi -> ../init.d/dahdi /etc/rc5.d/S15dahdi -> ../init.d/dahdi DAHDI has been configured. List of detected DAHDI devices: No hardware found debian:/usr/src/dahdi-tools-2.4.0#
DAHDIロードモジュールの設定
/etc/dahdi/modulesを編集しdahdi_dummyだけを使用できるようにします。
# nano /etc/dahdi/modules
dahdi_dummyを追加し、他のモジュールをコメントアウトします。
# Contains the list of modules to be loaded / unloaded by /etc/init.d/dahdi. # # NOTE: Please add/edit /etc/modprobe.d/dahdi or /etc/modprobe.conf if you # would like to add any module parameters. # # Format of this file: list of modules, each in its own line. # Anything after a '#' is ignore, likewise trailing and leading # whitespaces and empty lines. # Digium TE205P/TE207P/TE210P/TE212P: PCI dual-port T1/E1/J1 # Digium TE405P/TE407P/TE410P/TE412P: PCI quad-port T1/E1/J1 # Digium TE220: PCI-Express dual-port T1/E1/J1 # Digium TE420: PCI-Express quad-port T1/E1/J1 #wct4xxp # Digium TE120P: PCI single-port T1/E1/J1 # Digium TE121: PCI-Express single-port T1/E1/J1 # Digium TE122: PCI single-port T1/E1/J1 #wcte12xp # Digium T100P: PCI single-port T1 # Digium E100P: PCI single-port E1 #wct1xxp # Digium TE110P: PCI single-port T1/E1/J1 #wcte11xp # Digium TDM2400P/AEX2400: up to 24 analog ports # Digium TDM800P/AEX800: up to 8 analog ports # Digium TDM410P/AEX410: up to 4 analog ports #wctdm24xxp # X100P - Single port FXO interface # X101P - Single port FXO interface #wcfxo # Digium TDM400P: up to 4 analog ports #wctdm # Digium B410P: 4 NT/TE BRI ports #wcb4xxp # Digium TC400B: G729 / G723 Transcoding Engine #wctc4xxp # Xorcom Astribank Devices #xpp_usb # DAHDI Dummy dahdi_dummy
(注)
dahdi_dummyはタイミングだけを生成するモジュールです。ハードウェアを実装していなければ、dahdi_dummyをロードするだけで、他のモジュールはロードする必要がありません。
DAHDIの起動確認
dahdiを起動し、エラーがないことが確認します。
debian:/etc/dahdi# /etc/init.d/dahdi start Loading DAHDI hardware modules: dahdi_dummy: done No hardware timing source found in /proc/dahdi, loading dahdi_dummy Running dahdi_cfg: done. debian:/etc/dahdi#
Asteriskのインストール
Asteriskソースの入手
Asterisk 1.6のソースは以下からダウンロードします。
http://downloads.digium.com/pub/asterisk/releases/
/usr/src/にダウンロードします。
# cd /usr/src
# wget http://downloads.digium.com/pub/asterisk/releases/asterisk-1.6.0.5.tar.gz
Asteriskソースを展開します。
# tar zxvf asterisk-1.6.0.5.tar.gz
# cd asterisk-1.6.0.5
Asteriskのコンパイルとインストール
configureしてmakeします。
# ./configure
checking for mandatory modules: ... ok
configure: creating ./config.status
config.status: creating build_tools/menuselect-deps
config.status: creating makeopts
config.status: creating channels/h323/Makefile
config.status: creating include/asterisk/autoconfig.h
.$$$$$$$$$$$$$$$=..
.$7$7.. .7$$7:.
.$$:. ,$7.7
.$7. 7$$$$ .$$77
..$$. $$$$$ .$$$7
..7$ .?. $$$$$ .?. 7$$$.
$.$. .$$$7. $$$$7 .7$$$. .$$$.
.777. .$$$$$$77$$$77$$$$$7. $$$,
$$$~ .7$$$$$$$$$$$$$7. .$$$.
.$$7 .7$$$$$$$7: ?$$$.
$$$ ?7$$$$$$$$$$I .$$$7
$$$ .7$$$$$$$$$$$$$$$$ :$$$.
$$$ $$$$$$7$$$$$$$$$$$$ .$$$.
$$$ $$$ 7$$$7 .$$$ .$$$.
$$$$ $$$$7 .$$$.
7$$$7 7$$$$ 7$$$
$$$$$ $$$
$$$$7. $$ (TM)
$$$$$$$. .7$$$$$$ $$
$$$$$$$$$$$$7$$$$$$$$$.$$$$$$
$$$$$$$$$$$$$$$$.
configure: Package configured for:
configure: OS type : linux-gnu
configure: Host CPU : i686
configure: build-cpu:vendor:os: i686 : pc : linux-gnu :
configure: host-cpu:vendor:os: i686 : pc : linux-gnu :
debian:/usr/src/asterisk-1.6.0.5#
# make
[CC] recno/rec_utils.c -> recno/rec_utils.o
[AR] hash/hash.o hash/hash_bigkey.o hash/hash_buf.o hash/hash_func.o hash/hash_log2.o hash/hash_page.o hash/ndbm.o btree/bt_close.o btree/bt_conv.o btree/bt_debug.o btree/bt_delete.o btree/bt_get.o btree/bt_open.o btree/bt_overflow.o btree/bt_page.o btree/bt_put.o btree/bt_search.o btree/bt_seq.o btree/bt_split.o btree/bt_utils.o db/db.o mpool/mpool.o recno/rec_close.o recno/rec_delete.o recno/rec_get.o recno/rec_open.o recno/rec_put.o recno/rec_search.o recno/rec_seq.o recno/rec_utils.o -> libdb1.a
[LD] abstract_jb.o acl.o adsistub.o aescrypt.o aeskey.o aestab.o alaw.o app.o ast_expr2.o ast_expr2f.o asterisk.o astmm.o astobj2.o audiohook.o autoservice.o callerid.o cdr.o channel.o chanvars.o cli.o config.o cryptostub.o db.o devicestate.o dial.o dns.o dnsmgr.o dsp.o enum.o event.o features.o file.o fixedjitterbuf.o frame.o fskmodem.o global_datastores.o hashtab.o http.o image.o indications.o io.o jitterbuf.o loader.o logger.o manager.o md5.o netsock.o pbx.o plc.o privacy.o rtp.o say.o sched.o sha1.o slinfactory.o srv.o stdtime/localtime.o strcompat.o tcptls.o tdd.o term.o threadstorage.o translate.o udptl.o ulaw.o utils.o version.o editline/libedit.a db1-ast/libdb1.a -> asterisk
+--------- Asterisk Build Complete ---------+
+ Asterisk has successfully been built, and +
+ can be installed by running: +
+ +
+ make install +
+-------------------------------------------+
debian:/usr/src/asterisk-1.6.0.5#
# make install
/usr/bin/install -c -m 644 keys/iaxtel.pub /var/lib/asterisk/keys
/usr/bin/install -c -m 644 keys/freeworlddialup.pub /var/lib/asterisk/keys
/usr/bin/install -c -m 644 doc/asterisk.8 /usr/share/man/man8
/usr/bin/install -c -m 644 contrib/scripts/astgenkey.8 /usr/share/man/man8
/usr/bin/install -c -m 644 contrib/scripts/autosupport.8 /usr/share/man/man8
/usr/bin/install -c -m 644 contrib/scripts/safe_asterisk.8 /usr/share/man/man8
if [ -f contrib/firmware/iax/iaxy.bin ] ; then \
/usr/bin/install -c -m 644 contrib/firmware/iax/iaxy.bin /var/lib/asterisk/firmware/iax/iaxy.bin; \
fi
+---- Asterisk Installation Complete -------+
+ +
+ YOU MUST READ THE SECURITY DOCUMENT +
+ +
+ Asterisk has successfully been installed. +
+ If you would like to install the sample +
+ configuration files (overwriting any +
+ existing config files), run: +
+ +
+ make samples +
+ +
+----------------- or ---------------------+
+ +
+ You can go ahead and install the asterisk +
+ program documentation now or later run: +
+ +
+ make progdocs +
+ +
+ **Note** This requires that you have +
+ doxygen installed on your local system +
+-------------------------------------------+
debian:/usr/src/asterisk-1.6.0.5#
# make samples
debian:/usr/src/asterisk-1.6.0.5# make samples
Installing adsi config files...
Installing configs/asterisk.adsi
Installing configs/telcordia-1.adsi
Installing other config files...
Installing file configs/adsi.conf.sample
Installing file configs/adtranvofr.conf.sample
Installing file configs/agents.conf.sample
Installing file configs/alarmreceiver.conf.sample
Installing file configs/alsa.conf.sample
Installing file configs/amd.conf.sample
Installing file configs/cdr.conf.sample
Installing file configs/cdr_adaptive_odbc.conf.sample
Installing file configs/cdr_custom.conf.sample
Installing file configs/cdr_manager.conf.sample
Installing file configs/cdr_odbc.conf.sample
Installing file configs/cdr_pgsql.conf.sample
Installing file configs/cdr_sqlite3_custom.conf.sample
Installing file configs/cdr_tds.conf.sample
Installing file configs/chan_dahdi.conf.sample
Installing file configs/cli.conf.sample
Installing file configs/codecs.conf.sample
Installing file configs/console.conf.sample
Installing file configs/dnsmgr.conf.sample
Installing file configs/dundi.conf.sample
Installing file configs/enum.conf.sample
Installing file configs/extconfig.conf.sample
Installing file configs/extensions.ael.sample
Installing file configs/extensions.conf.sample
Installing file configs/extensions.lua.sample
Installing file configs/extensions_minivm.conf.sample
Installing file configs/features.conf.sample
Installing file configs/festival.conf.sample
Installing file configs/followme.conf.sample
Installing file configs/func_odbc.conf.sample
Installing file configs/gtalk.conf.sample
Installing file configs/h323.conf.sample
Installing file configs/http.conf.sample
Installing file configs/iax.conf.sample
Installing file configs/iaxprov.conf.sample
Installing file configs/indications.conf.sample
Installing file configs/jabber.conf.sample
Installing file configs/jingle.conf.sample
Installing file configs/logger.conf.sample
Installing file configs/manager.conf.sample
Installing file configs/meetme.conf.sample
Installing file configs/mgcp.conf.sample
Installing file configs/minivm.conf.sample
Installing file configs/misdn.conf.sample
Installing file configs/modules.conf.sample
Installing file configs/musiconhold.conf.sample
Installing file configs/muted.conf.sample
Installing file configs/osp.conf.sample
Installing file configs/oss.conf.sample
Installing file configs/phone.conf.sample
Installing file configs/phoneprov.conf.sample
Installing file configs/queuerules.conf.sample
Installing file configs/queues.conf.sample
Installing file configs/res_ldap.conf.sample
Installing file configs/res_odbc.conf.sample
Installing file configs/res_pgsql.conf.sample
Installing file configs/res_snmp.conf.sample
Installing file configs/rpt.conf.sample
Installing file configs/rtp.conf.sample
Installing file configs/say.conf.sample
Installing file configs/sip.conf.sample
Installing file configs/sip_notify.conf.sample
Installing file configs/skinny.conf.sample
Installing file configs/sla.conf.sample
Installing file configs/smdi.conf.sample
Installing file configs/udptl.conf.sample
Installing file configs/unistim.conf.sample
Installing file configs/usbradio.conf.sample
Installing file configs/users.conf.sample
Installing file configs/voicemail.conf.sample
Installing file configs/vpb.conf.sample
Creating asterisk.conf
mkdir -p /var/spool/asterisk/voicemail/default/1234/INBOX
build_tools/make_sample_voicemail //var/lib/asterisk //var/spool/asterisk
Installing file phoneprov/000000000000-directory.xml
Installing file phoneprov/000000000000-phone.cfg
Installing file phoneprov/000000000000.cfg
Installing file phoneprov/polycom.xml
debian:/usr/src/asterisk-1.6.0.5#
# make config
debian:/usr/src/asterisk-1.6.0.5# make config
update-rc.d: warning: /etc/init.d/asterisk missing LSB information
update-rc.d: see
これでインストールは完了です。
最後の make config で起動時に自動起動するようになります。
Asteriskの起動と停止
Asteriskの起動
debian:~# /etc/init.d/asterisk start
Starting Asterisk PBX: asterisk.
debian:~#
Asteriskの停止
debian:~# /etc/init.d/asterisk stop
Stopping Asterisk PBX: asterisk.
debian:~#
Asterisk CLI(コマンドラインインターフェース)の起動
CLIの起動
debian:~# asterisk -c
Asterisk 1.6.0.5, Copyright (C) 1999 - 2008 Digium, Inc. and others.
Created by Mark Spencer
CLIの再起動
ebian:~# asterisk -r
Asterisk 1.6.0.5, Copyright (C) 1999 - 2008 Digium, Inc. and others.
Created by Mark Spencer
Asteriskの停止
*CLI> stop now でAsteriskを停止することができます。
*CLI> stop now
Beginning asterisk shutdown....
Executing last minute cleanups
== Destroying musiconhold processes
Asterisk cleanly ending (0).
debian-arm:~#
2010.12.16