在服务器(我的环境是centos6.5)上部署完svn之后,一般都希望每次重启的时候svn服务能够随着启动。上网搜索了一下,一般有两种做法:

一、启动脚本+/etc/rc.local启动

1. 在某个目录下写一个启动svn服务的脚本,譬如我在/root目录下增加一个svn.sh文件,内容如下:

#!/bin/bash
svnserve -d -r /root/.subversion/repos

2. 保存后加x权限:

chmod u+x svn.sh

3. 在/root/svn.sh文件最后一行加上

/root/svn.sh

保存,重启系统查看是否成功。

二、增加一个服务脚本并使其成为服务

1. 在/etc/init.d/目录下增加服务脚本svnboot,内容如下

#!/bin/bash
# chkconfig:
# description: svn server
SVN_HOME=/root/.subversion/repos
SVN_SERVER=/usr/bin/svnserve if [ ! -x $SVN_SERVER ]; then
echo "svnserver startup: cannot start"
exit
fi case "$1" in
start)
echo "Starting svnserve…"
$SVN_SERVER -d -r $SVN_HOME
echo "Finished!"
;;
stop)
echo "Stoping svnserve…"
killall svnserve
echo "Finished!"
;;
restart)
$ stop
$ start
;;
*)
echo "Usage: svn { start | stop | restart } "
exit
esac

注意脚本中第二三行的注释不可少,不然无法使用chkconfig加入服务。

2. 保存后加x权限:

chmod u+x svnboot

3. 加入服务

chkconfig --add svnboot
chkconfig svnboot on

重启验证是否能够开机自动重启,另外后面可以直接使用

service svnboot opt 来操作svnserve服务,opt为start|stop|restart。

三、总结

一般来说第一种方式比较简单明了,但是如果放在/etc/rc.local里启动的脚本越来越多,就很容易出现问题,所以像svn这种比较重要的服务,还是用第二种方式比较稳一点。

svn服务,svnserve开机启动的更多相关文章

  1. Centos7 设置、查看、添加、删除服务的开机启动项

    查看开机启动项 systemctl list-unit-files |   grep enable 为服务添加开机启动项 systemctl enable zabbix-server.service ...

  2. Linux系统中svn服务器设置开机启动

    安装完svn服务器后虽然好用但是因为经常重启Linux服务器,每次重启完就要去手动启动svn服务器,很是麻烦,于是在网上找了一些方法后,自己把svn服务器设置成开机启动 步骤一:安装svn服务器: h ...

  3. SpringBoot 在CentOS7部署,注册为服务,开机启动

    1.首先在maven工程的pom文件中引入以下标签并保存 <build> <plugins> <plugin> <groupId>org.springf ...

  4. redis以服务模式开机启动

    第一步 修改redis为后台启动 vim /usr/redis/redis.conf #路径根据实际情况决定 # By default Redis does not run as a daemon. ...

  5. tomcat以服务形式开机启动

    第一步 将tomcat配置为服务模式 cp $TOMCAT_HOME/bin/catalina.sh /etc/init.d/tomcat #将tocmt启动文件复制到/etc/init.d下 vim ...

  6. Centos下安装最新版Mono并为windwos服务配置开机启动项

    一:安装Mono,此步骤参照官网 1:配置Yum仓库 #Centos 7yum install yum-utils rpm --import "http://keyserver.ubuntu ...

  7. linux jexus 服务 设置开机启动

    linux的服务开机设置一般在 /etc/init.d/里 而jexus的默认安装目录在 /usr/jexus里 启动文件为 jws 参数 有start stop restart 这里贡献一个刚写好的 ...

  8. linux 下将tomcat注册成服务并开机启动

    一.将startup.sh和shutdown.sh新建软连接到/usr/bin ln -s /usr/local/apache-tomcat-8.5.38/bin/startup.sh /usr/bi ...

  9. 树莓派(jessie)制作服务并开机启动

    /etc/init.d/xware #!/bin/sh ### BEGIN INIT INFO # Provides: svn_serve # Required-Start: $remote_fs # ...

随机推荐

  1. oracle 之 手动建库

    1.-- 查看服务器 ORA 环境变量情况[oracle@orastb ~]$ env|grep ORAORACLE_BASE=/u01/app/oracleORACLE_HOME=/u01/app/ ...

  2. 类的声明与实例化及构造方法析构方法(PHP学习)

    <?php class human{ public static $leg=2; public $name = 'leo'; public $age = '25'; public functio ...

  3. java web 程序---登陆验证注销/重定向session_login.jsp/

    思路:第一个页面是:session_login.页面,一个form表单,一个脚本,输入的名称不为空,不,则重定向 到welcome.jsp页面.否则,显示登陆失败,请输入登陆名称: 第二个页面,是we ...

  4. i和j的值交换的方法

        方法一: int i = 3, j = 5; int c = i; i = j; j = c;     方法二: int i = 3, j = 5; int n = i + j; i = n ...

  5. Linux学习笔记 - Shell 函数的使用

    基本语法 funname () { action; return -)):如果不加,将以最后一条命令运行结果,作为返回值. } 示例1:定义并调用无返回值的函数 #!/bin/bash a= b= c ...

  6. 2017百度之星初赛B-1002(HDU-6115)

    一.思路 这题“看似”比较难搞的一点是,一个节点上有多个办公室,这怎么求?其他的,求树中任意两个节点的距离(注意:没有最远或最最进这一说法,因为树上任意两个节点之间有且仅有一条路径.不然就有回路了,对 ...

  7. 阶段性总结(PHP-JSON)

    PHP JSON 本节我们将为大家介绍如何使用 PHP 语言来编码和解码 JSON 对象. 在没有json编码和解码之前,我们 html前台 和 PHP后台 之间的数据传输只能用字符串的方式传输. 但 ...

  8. iOS开发API常用英语名词

    iOS开发API常用英语名词 0. indicating 决定 1.in order to 以便 2.rectangle bounds 矩形尺寸 3.applied 应用 4.entirety 全部 ...

  9. MyBatis单个参数的动态语句引用

    参考:http://blog.csdn.net/viviju1989/article/details/17071909 是当我们的参数为String时,在sql语句中#{name} 会去我们传进来的参 ...

  10. JavaScript中的跨域详解(二)

    4.AJAX 同源政策规定,AJAX请求只能发给同源的网址,否则就报错. 除了架设服务器代理(浏览器请求同源服务器,再由后者请求外部服务),有三种方法规避这个限制. JSONP WebSocket C ...