歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

yate學習

基於CentOS安裝Yate

1前言

思前想後,很多東西現在理解了,會用了。時間長了,對這個系統進行bug修復的時候。很多知道的東西會忘的差不多,需要重新花比較多的時間去理解和學習。俗話說:好記性不如爛筆頭。還是老老實實的用文字和圖片的方法來記錄。
為了讓以後的自己輕松一點,只要讓現在的自己多做一點工作,重新開始搭建yate的環境。

2源碼下載

最好從官網下載,
官網地址:http://www.yate.ro/
下載地址:http://docs.yate.ro/wiki/Download
由於沒有CentOS的版本,只好下載Windows的源碼包,本次源碼下載地址:http://yate.null.ro/tarballs/yate5/yate-5.5.0-1.tar.gz
使用svn下載:svncheckouthttp://voip.null.ro/svn/yate/trunk yate-SVN

3安裝

下載完成之後,進入yate-SVN

生成configure文件

生成Makefile

編譯
#make
(跑太快了,沒有弄下來圖)

安裝
#make install

4運行

#./run

5運行說明

這個需要參考yate的運行參數

如果要添加調試信息:

如果要將調試信息輸出到日志文件:


後台運行:

6修改為service服務

我們知道,在Linux下面的服務的運行腳本一般通過service進行管理。那麼如果我們想要使用service命令來進行管理yate服務那該怎麼做呢?
我們可以參考run文件進行編寫yated:
#!/bin/sh
#
# chkconfig: - 91 35
# description: Starts and stops the yate daemon \
#              used to provide yate services.
#
# pidfile: /var/run/yate.pid

# Source function library.
if [ -f /etc/init.d/functions ] ; then
  . /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
  . /etc/rc.d/init.d/functions
else
  exit 1
fi

# Avoid using root's TMPDIR
unset TMPDIR

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 1

RETVAL=0

YATE="yate"

OPTS=${OPTS:- -l /var/log/yate.log -s 60 -r -vvvvvvvvvv -Dt}
PIDFILE=${PIDFILE:-/var/run/yate.pid}

SET_CONF="-c /usr/local/etc/yate"
SET_MODS="-m /usr/local/lib/yate"
SET_SHARE="-e /usr/local/share/yate"
start() {
        KIND="yate"
        echo -n $"Starting $KIND services: "
        daemon $KIND \
        -d -p "${PIDFILE}" ${OPTS} \
        ${SET_CONF} ${SET_SHARE}
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/yate || \
           RETVAL=1
        return $RETVAL
}

stop() {
        KIND="yate"
        echo -n $"Shutting down $KIND services: "
        killproc yate
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/yate
        return $RETVAL
}

restart() {
        stop
        start
}

rhstatus() {
        status -l yated yate
        return $?
}

rhstatus() {
        status -l yated yate
        return $?
}

# Allow status as non-root.
if [ "$1" = status ]; then
       rhstatus
       exit $?
fi

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  status)
        rhstatus
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|status}"
        exit 2
esac

exit $?

將yated拷貝到/etc/init.d/
將/usr/local/bin/yate /usr/sbin/
然後看一下是否可以運行:

殺死進程25417
Copyright © Linux教程網 All Rights Reserved