FreeBSD 10.3 上的构建独立版本SVN服务器

FreeBSD Subversion服务器安装

1、安装Subversion

从ports安装subversion

1 # cd /usr/ports/devel/subversion
2 # make install clean

配置如下图

 

2、svn文件的存储位置。 例如 /opt/svn/repos

1 # mkdir -p /opt/svn/repos

3、创建一个svn用户和组, 用于svnliteserve守护程序运行的用户。

1 # pw groupadd svn
2 # pw adduser svn -g svn -s /usr/sbin/nologin

4、设置 /opt/svn/repos 目录权限

1 # chown -R svn:svn /opt/svn/repos

5、添加svnliteserve 启动脚本

1 # vi /usr/local/etc/rc.d/svnliteserve

添加以下内容

#!/bin/sh
#
# svnliteserve.sh for rc.d usage (c) 2016 Greg Kennedy.
# $Id$

# PROVIDE: svnliteserve
# REQUIRE: DAEMON
# BEFORE: LOGIN
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable SVNServe:
#
#  svnliteserve_enable="YES"
#  # optional
#  svnliteserve_flags="-d --listen-port=3690 --listen-host 0.0.0.0"
#  svnliteserve_data="/usr/local/repositories"
#  svnliteserve_user="svn"
#  svnliteserve_group="svn"
#
# Note:
# svnliteserve bind per default at the ipv6 address!
# If you want svnliteserve binding at ipv4 address, you have
# to use option 'svnliteserve_flags' with --listen-host parameter

. /etc/rc.subr

# Set some defaults
svnliteserve_enable=${svnliteserve_enable:-"NO"}
svnliteserve_flags=${svnliteserve_flags:-"-d --listen-port=3690 --listen-host 0.                                                                                                                                                             0.0.0"}
svnliteserve_data=${svnliteserve_data:-"/opt/svn/repos"}
svnliteserve_user=${svnliteserve_user:-"svn"}
svnliteserve_group=${svnliteserve_group:-"svn"}

name=svnliteserve
rcvar=svnliteserve_enable
load_rc_config $name
command=/usr/bin/svnliteserve
command_args="-r ${svnliteserve_data}"

run_rc_command "$1"


编辑 /etc/rc.conf 添加以下内容

1 svnliteserve_enable="YES"

6、启动SVN服务器

1 # /usr/local/etc/rc.d/svnliteserve start

 

FreeBSD Subversion服务器配置

1、设置存储库

1 # /usr/bin/svnliteadmin create /opt/svn/repos

 

2、修改/opt/svn/repos/conf/svnserve.conf 如下

1 [general]
2 anon-access = none #控制非鉴权用户访问版本库的权限 取值  "write", "read", "none"
3 auth-access = write #控制鉴权用户访问版本库的权限 取值  "write", "read", "none"
4 password-db = passwd #指定用户名口令文件名,当前目录 /opt/svn/repos/conf/passwd
5 authz-db = authz #指定权限配置文件名,当前目录 /opt/svn/repos/conf/authz

3、编辑/opt/svn/repos/conf/passwd 用户密码文件

1 [users]
2 user1 = test123 #格式用户名=密码
3 admin1 = test123
4 admin2 = test123

 

4、编辑 /opt/svn/repos/conf/authz文件授予用户特定的读写权限

01 [groups]
02 admin = admin1,admin2
03 user = user1
04  
05 [/]
06 @admin = rw
07  
08 [/trunk]
09 @admin = rw
10 @user = rw
11  
12 [/branches]
13 @admin = rw
14 @user = rw
15  
16 [/tag]
17 @admin = rw
18 @user = rw

5、重起svnliteserve 加载刚刚修改的文件

1 # /usr/local/etc/rc.d/svnliteserve restart

 

6、使用 SVN客户端测试一下

1 svn checkout svn://192.168.1.100

 

参考文献

https://theexplorator.wordpress.com/2014/12/17/setting-up-a-svn-server-on-freebsd/

https://forums.freebsd.org/threads/56745/


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值