利用者・トーク:ちか

提供: VoIP-Info.jp
2008年5月20日 (火) 00:14時点におけるちか (トーク | 投稿記録)による版
移動先: 案内検索

Wiki形式初めて使ったので、不手際あるかもです。
どぞ、よろしく。

UbuntuでAsteriskをデーモン起動するメモ

Ubuntuは、/var/run ディレクトリがテンポラリなので
mkdir /var/run/asteriskを行っても次回起動時にディレクトリは消滅しています。
そこで、init.dで起動時にフォルダを作成させます。

Asteriskのインストールが終了したら
asteriskグループとユーザを作成し、フォルダの権限を設定する。

groupadd asterisk
useradd -d /var/lib/asterisk -s /usr/sbin/nologin -g asterisk asterisk
mkdir /var/run/asterisk
chown -R asterisk:asterisk /var/run/asterisk
chmod -R u=rwX,g=rX,o= /var/run/asterisk
chown -R asterisk:asterisk /var/lib/asterisk
chown -R asterisk:asterisk /var/log/asterisk
chown -R asterisk:asterisk /var/spool/asterisk
chown -R asterisk:asterisk /usr/lib/asterisk
chown -R asterisk:asterisk /etc/asterisk
chown -R asterisk:asterisk /dev/zap
chmod -R u=rwX,g=rX,o= /var/lib/asterisk
chmod -R u=rwX,g=rX,o= /var/log/asterisk
chmod -R u=rwX,g=rX,o= /var/spool/asterisk
chmod -R u=rwX,g=rX,o= /usr/lib/asterisk
chmod -R u=rwX,g=rX,o= /etc/asterisk
chmod -R u=rwX,g=rX,o= /dev/zap

asteriskのソースから起動ファイルをコピー
mv /usr/src/asterisk-ver/contrib/init.d/rc.debian.asterisk /etc/init.d/asterisk
nano /etc/init.d/asterisk

そのあと、以下のように起動ファイルを修正してください。

AST_USER="asterisk"
AST_GROUP="asterisk"

if ! [ -x $DAEMON ] ; then
      	echo "ERROR: /usr/sbin/asterisk not found"
      	exit 0
fi

if ! [ -d /etc/asterisk ] ; then
        echo "ERROR: /etc/asterisk directory not found"
        exit 0
fi

if ! [ -d /var/run/asterisk ] ; then
       	mkdir /var/run/asterisk
	chown -R asterisk:asterisk /var/run/asterisk
	chmod -R u=rwX,g=rX,o= /var/run/asterisk
fi

set -e

nano /usr/sbin/safe_asterisk

先頭の行を
#! /bin/sh
 ↓修正
#! /bin/bash

nano /etc/asterisk/asterisk.conf
astrundir => /var/run
 ↓修正
astrundir => /var/run/asterisk