Linux服务器搭建SVN服务

15 篇文章 0 订阅

一、SVN简介

Subversion(SVN) 是一个开源的版本控制系统, 也就是说 Subversion 管理着随时间改变的数据。这些数据放置在一个中央资料档案库(repository) 中。这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。

二、服务搭建

2.1安装所需要的包

yum install subversion httpd mod_dav_svn –y

在这里插入图片描述

2.2配置apache 开机启动和启动apache服务

#开机启动
systemctl enable httpd
#启动
systemctl start httpd

2.3 检查apache支持subversion的模块是否安装成功

#进入配置文件夹
cd /etc/httpd/conf.modules.d/
#查看有哪些配置
ls
#编辑配置文件
vim 10-subversion.conf

在这里插入图片描述

看到有图片中箭头指向的2个模块,就说明apache支持subversion模块已经安装成功了。

2.4创建svn用户

useradd svn  #创建svn用户

在这里插入图片描述
创建仓库目录

mkdir /var/repos  #创建repos文件夹

在这里插入图片描述
改变/var/repos目录的拥有者和所属组为svn

chown svn:svn -R /var/repos

在这里插入图片描述

2.5切换到svn用户,创建仓库

su - svn #切换到svn用户

在这里插入图片描述
创建一个测试仓库svntest

svnadmin create /var/repos/svntest #创建测试仓库

在这里插入图片描述
可以看到svntest仓库的目录结构如下 :
在这里插入图片描述
启动svn服务

svnserve -d -r /var/repos #启动svn服务

在这里插入图片描述

  • -d 是以后台方式运行
  • -r 指定要运行的仓库

查看服务是否正常启动

ss -anput|grep 3690 #查看服务是否正常启动

在这里插入图片描述

三、配置apache部分

3.1修改apache的运行用户为svn

cd conf
vim httpd.conf

在这里插入图片描述

3.2 创建subversion文件

cd conf.d/
vim subversion.conf

在这里插入图片描述

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
# Example configuration to enable HTTP access for a directory
# containing Subversion repositories, "/var/www/svn".  Each repository
# must be both:
#
#   a) readable and writable by the 'apache' user, and
#
#   b) labelled with the 'httpd_sys_content_t' context if using
#   SELinux
#

#
# To create a new repository "http://localhost/repos/stuff" using
# this configuration, run as root:
#
#   # cd /var/www/svn
#   # svnadmin create stuff   
#   # chown -R apache.apache stuff
#   # chcon -R -t httpd_sys_content_t stuff
#

#<Location /repos>
#   DAV svn
#   SVNParentPath /var/www/svn
#
#   # Limit write permission to list of valid users.
#   <LimitExcept GET PROPFIND OPTIONS REPORT>
#      # Require SSL connection for password protection.
#      # SSLRequireSSL
#
#      AuthType Basic
#      AuthName "Authorization Realm"
#      AuthUserFile /path/to/passwdfile
#      Require valid-user
#   </LimitExcept>
#</Location>
<Location /svn>
       DAV svn
       SVNParentPath /var/repos
        AuthType Basic
        AuthName "Subversion repository"
        AuthUserFile /home/svn/passwd
        AuthzSVNAccessFile /home/svn/auth
        Require valid-user
</Location>

在这里插入图片描述
在这里插入图片描述

3.3 建立密码文件,配置目录权限

su - svn  #切换到svn用户
htpasswd -c /home/svn/passwd liang  #首次创建用户liang
ll

在这里插入图片描述
第一次创建文件的时候要加 -c 参数。 以后就不要加了,否则会把以前的内容全部覆盖。
再创建第2个用户

htpasswd /home/svn/passwd test

在这里插入图片描述

查看创建的用户
在这里插入图片描述

可能看到已经有2个用户了。

3.4 创建权限控制文件

cd /home/svn/auth
vim auth
[/]
liang = rw
[svntest:/]
@group1 = rw
test = r
[groups]
group1 = liang
group2 = liang,test

在这里插入图片描述

liang这个用户可以对所有的仓库读写,test用户可以对svntest这个仓库读。

四、重启apache服务

systemctl restart httpd

在这里插入图片描述

在浏览器中访问:
在这里插入图片描述

var code = "13abbd1e-6781-44d4-91dd-5fa97b99ea12"
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr.D.Chuang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值