阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ubuntu 14.04下搭建SVN服务器

419次阅读
没有评论

共计 3101 个字符,预计需要花费 8 分钟才能阅读完成。

工作环境:

Server 端:系统 Ubuntu 14.04 64bit

Client 端:系统 Windows 10 64bit,Tortoise 1.9.3.27038

服务器端安装流程:
安装 svn:sudo apt-get install subversion
创建 svn 仓库:mkdir /home/.svn(使用隐藏目录)

cd /home/.svn
mkdir repos1
sudo svnadmin create /home/.svn/repos1(创建仓库 repos1,执行成功后 repos1 目录下有 svnadmin 创建的目录和文件)
mkdir repos2
sudo svnadmin create /home/.svn/repos2(创建仓库 repos2,执行成功后 repos2 目录下有 svnadmin 创建的目录和文件)
配置和管理 svn(repos1 和 repos2 是两个独立的仓库,配置过程相似,我们以 repos1 进行说明)配置 /home/.svn/repos1/conf/svnserve.conf 文件,vim svnserve.conf,配置 [general] 下的参数 掉以下几行的“#”,并根据需要进行权限设置

anon-access:匿名用户的权限,可以为 read,write 和 none,默认值 read。不允许匿名用户访问:anon-access = none
auth-access:认证用户的权限,可以为 read,write 和 none,默认值 write
password-db:密码数据库的路径,去掉前边的 #
authz-db:认证规则库的路径,去掉前边的 #。
注意:
这些配置项的行都要顶格,否则会报错。修改配置后需要重启 svn 才能生效。
之前犯了一个错误,误将 groups-db = groups(设置权限的文件),但是 conf 路径下没有响应文件,一直报错,连不上 svn
realm = repos,realm 作用是定义登陆授权文件路径,单个 repository 尽量不要使用,容易跟 authz 中的路径产生歧义。
配置 /home/.svn/repos1/conf/passwd 文件,vim passwd,根据配置文件提示,添加用户名及密码 格式:用户名 = 密码(明码)

举例:test = 123456
配置 /home/.svn/repos1/conf/authz 文件,vim authz [groups]:用户群组管理,可根据用户权限大小,设置不同的群组,格式:群组名 = 用户名 1, 用户名 2, 用户名 3,…

如 manger = zhangsan,lisi
如 coder = linuxmi,linuxidc
[groups]权限设置:
groups 下面的 sections 表示对一个目录的认证规则,根目录认证规则为[/]. 单个用户分别进行认证设定        [/]zhangsan = rw  #zhangsan 对根目录的权限为 rwlisi = r #lisi 对根目录的权限为 r

如果用户角度较多,可以对群组直接进行配置,群组名前加“@”[/]@manager = rw #等价于上面两行的设定效果
如果启动时从 /home/.svn/repos1 启动,/ 就是 repos1 的目录
如果从 /home/.svn/ 启动,每个仓库的根目录是自己文件路径下的起始目录,其权限设置如下:[repos1:/]@manager =  rw@coder = r
[repos2:/]

@manager =  rw

@coder = r
注意:不能跨越仓库设置权限;
问题:初次配置时,会遇到认证失败或无效的问题,原因有二:svnserve.conf 中,每行可能存在空格,去掉空格即可

authz 文件中,配置使用 repos1 根目录启动,但是却采用 svn://192.168.1.123/repos1 进行访问
建议:authz 文件中尽量采用一种权限设置模式,切勿多种权限设置。
总结:每个仓库的根目录 / 就是该仓库的起始目录;[repos1:/]适用于多仓库;[/]适用于但仓库和多仓库;
启动和停止 svn 启动 从 repos1 目录启动 sudo svnserve -d -r /home/.svn/repos1

根目录 / 是 repos1,authz 中的规则配置使用 session[/]
访问方式:svn://192.168.1.123/
从.svn 目录启动 sudo svnserve -d -r /home/.svn

根目录 / 是.svn,authz 对 repos1 的配置使用 session[repos1:/],对 repos2 的配置使用 session[repos2:/]
访问方式:svn://192.168.1.123/
检测 svn 服务器是否已经启动 方式一:ps axu | grep svnserve

方式二:netstat -an | grep 3690(svn 默认端口 3690)
停止 svn 服务器 方式一:ps aux | grep svnserve, 获取其 pid

sudo kill -9 pid
方式二:sudo killall svnserve

svn 服务开机自启动 cd /etc/init.d(Ubuntu 自启动脚本位置)

vim startsvn.sh
添加以下两行代码        #! /bin/bashsvnserve -d -r /home/.svn(多仓库启动模式)
使配置生效 update-rc.d startsvn.sh defaults 这个命令等效于 update-rc.d startsvn.sh start 20 2 3 4 5 . stop 20 0 1 6

20 是默认的启动顺序号,可以手动修改,当然也可以在 defaults 后面加一个启动顺序号。0\1\2\3\4\5\6 是 ubuntu 的运行级别。
update-rc.d 可以生成或者移除 System- V 启动模式下的初始化脚本的链接,System- V 是 Ubuntu 采用的一种启动方式(好像记得更先进的启动方式是 System-d),update-rc.d 会在 /etc/rcrunlevel

.d/ 目录下生成 /etc/init.d/ 目录下的启动脚本的链接。

Ubuntu 14.04 下搭建 SVN 服务器 SVN://  http://www.linuxidc.com/Linux/2015-01/111956.htm

CentOS 6.2 SVN 搭建 (YUM 安装) http://www.linuxidc.com/Linux/2013-10/91903.htm

CentOS 6.5 部署 Apache+SVN  http://www.linuxidc.com/Linux/2013-12/94315.htm

Apache+SVN 搭建 SVN 服务器 http://www.linuxidc.com/Linux/2013-03/81379.htm

Windows 下 SVN 服务器搭建和使用 + 客户端重新设置密码 http://www.linuxidc.com/Linux/2013-05/85189p5.htm

Ubuntu Server 12.04 安装 SVN 并迁移 Virtual SVN 数据 http://www.linuxidc.com/Linux/2013-05/84695.htm

Ubuntu Server 搭建 SVN 服务以及迁移方法 http://www.linuxidc.com/Linux/2013-05/84693.htm

Subversion (SVN) 的详细介绍:请点这里
Subversion (SVN) 的下载地址:请点这里

更多 Ubuntu 相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-07/133249.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3101字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7960589
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
我用AI做了一个1978年至2019年中国大陆企业注册的查询网站

我用AI做了一个1978年至2019年中国大陆企业注册的查询网站

我用 AI 做了一个 1978 年至 2019 年中国大陆企业注册的查询网站 最近星哥在 GitHub 上偶然...
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换...
小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比 星哥玩云,带你从小白到上云高手。今天咱们就来聊聊——什...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...