将goagent配置为系统服务

goagent这个开源软件相当给力,平时访问youtube与facebook得靠它了。为了方便使用goagent,我将goagent配置为ubuntu系统服务,只要一开机进入桌面就随时使用它访问被墙的网站。

     第一步,将goagent安装至/opt/goagent-2.1.11,将/opt/goagent-2.1.11/local/proxy.py配置可执行权限: sudo chmod +x /opt/goagent-2.1.11/local/proxy.py;

     第二步,以root用户权限在/etc/init.d下创建新脚本,命名为goagent,并且配置可执行权限:sudo touch /etc/init.d/goagent  && sudo chmod +x /etc/init.d/goagent ;

     第三步,编辑/etc/init.d/goagent文件,录入下面脚本内容:

     

 1 #! /bin/sh
 2 ### BEGIN INIT INFO
 3 # Provides:          goagent
 4 # Required-Start:    $remote_fs $all
 5 # Required-Stop:
 6 # Default-Start:     2 3 4 5
 7 # Default-Stop:
 8 # Short-Description: goagent daemon
 9 ### END INIT INFO
10 
11 
12 PATH=/sbin:/usr/sbin:/bin:/usr/bin
13 NAME=goagent
14 DAEMON=/opt/goagent-2.1.11/local/proxy.py
15 PIDFILE=/var/run/$NAME.pid
16 
17 . /lib/init/vars.sh
18 . /lib/lsb/init-functions
19 
20 do_start()
21 {
22   if [ -f $PIDFILE ]; then
23     start-stop-daemon --pidfile $PIDFILE  --status
24     case "$?" in
25       0)
26         echo "$NAME is running !"
27         return  0
28         ;;
29       1|3)
30         #nothing to do
31         ;;
32       *)
33         echo "unable to determine status !"
34         return  1
35       ;;
36     esac
37   fi
38   echo "starting $NAME ..."
39   start-stop-daemon --start --quiet  --background --oknodo  --exec  $DAEMON --make-pidfile --pidfile $PIDFILE    
40   echo 'done.'
41   return  0
42 }
43 
44 do_stop()
45 {
46  echo "stopping $NAME ..."
47  if [ -f $PIDFILE ]; then
48     start-stop-daemon --stop --quiet  --oknodo --pidfile $PIDFILE
49     rm -f $PIDFILE
50  fi
51  echo 'done.'
52 }
53 
54 do_status()
55 {
56    start-stop-daemon --pidfile $PIDFILE  --status 
57    case "$?" in
58      0) 
59     echo "$NAME is running!"
60     ;;
61      1|3)
62     echo "$NAME is not running!"
63     ;;
64      *)
65     echo "unable to determine status!"
66     ;;
67   esac 
68 }
69 
70 
71 
72 case "$1" in
73     start)    
74     do_start
75         ;;
76     stop)
77     do_stop
78         ;;
79     status)
80     do_status
81     ;;
82     *)
83         echo "Usage: $0 start|stop" >&2
84         exit 3
85         ;;
86 esac

      第四步,配置goagent服务: sudo update-rc.d goagent defaults ; 在这里我将goagent配置为开机启动!

      最后一步是测试:
           启动服务 sudo service goagent start ;
           输出 starting goagent ... done.

           查看服务状态  sudo service goagent status
           输出 goagent is running !

           停止服务 sudo service goagent stop ;
           输出 stopping goagent ... done.

           查看服务状态 sudo service goagent status
           输出 goagent is not running !

      附上删除服务的方法:sudo update-rc.d -f goagent remove && sudo rm /etc/init.d/goagent  .

     此脚本在linux mint 14 xfce amd64 下通过测试!

转载时请注明出处 博客园flysun  网址:http://www.cnblogs.com/flysun


你可能感兴趣的:(将goagent配置为系统服务)