linux svn 自启动

1.svn服务自启动脚本

把脚本放在/etc/init.d/vi /etc/rc.d/init.d/svn

svn脚本内容:

01    #!/bin/bash

02    # chkconfig: - 85 15

03    # description: svn server

04    SVN_HOME=/svnroot/repos

05    if [ ! -f "/usr/bin/svnserve" ]

06    then

07    echo "svnserver startup: cannot start"

08    exit

09    fi

10    case "$1" in

11    start)

12    echo "Starting svnserve…"

13    /usr/local/svn/bin/svnserve -d --listen-port 3690 -r $SVN_HOME

14    echo "Finished!"

15    ;;

16    stop)

17    echo "Stoping svnserve…"

18    killall svnserve

19    echo "Finished!"

20    ;;

21    restart)

22    $0 stop

23    $0 start

24     

25    ;;

26    *)

27    echo "Usage: svn { start | stop | restart } "

28    exit 1

29    esac

这里请注意,不要删除# chkconfig: - 85 15和# description: svn server,不然无法使用chkconfig加入服务,会提示service svn does not support chkconfig.

然后执行

chmod 755 /etc/init.d/svn

chkconfig --add svn

chkconfig svn on

最后查看下chkconfig --list|grep svn

linux svn 自启动

可以看到svn已经加入到服务中,并已经在2345中为on.



2.shell脚本启动

这第2中自启动脚本,是根据下面情况才使用的

svnserve -d --listen-port 3690 -r /svnroot/repos/

svnserve -d --listen-port 3691 -r /svnroot/repo/

svn默认启动端口是3690,这里有两个svn库,所以当出现这样的情况时,上面的服务脚本只会启动一个svn库.所以就需要使用shell脚本来实现启动两个svn库.

vi /root/svn.sh

svn.sh脚本内容:

1    #!/bin/bash

2    svnserve -d --listen-port 3690 -r /svnroot/repos/

3    svnserve -d --listen-port 3691 -r /svnroot/repo/

然后添加可执行权限

chmod 700 /root/svn.sh或chmod ug+x /root/svn.sh

添加到自动运行

vi /etc/rc.local

在最后添加一行内容

/root/svn.sh

然后重启服务器,使用ps aux|grep svn来查看svn是否启动.好了,如果还有更好的方法请大家通知我下.

 

你可能感兴趣的:(linux)