Linux(Centos7)下搭建SVN服务器

简介: Linux(Centos7)下搭建SVN服务器

系统环境:centos7.6

第一步:通过yum命令安装svnserve,命令如下:

yum -y install subversion

此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行

若需查看svn安装位置,可以用以下命令:

rpm -ql subversion

第二步:创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)

svndata:为存放svn仓库的位置,可以在里面创建多个仓库。

svnpassword:为svndata下所有仓库的统一访问账号密码,以及权限文件。

mkdir -p /application/svndata
mkdir -p /application/svnpassword

第三步:创建svn版本库

在第二步建立的路径基础上,创建版本库,命令如下:

svnadmin create /application/svndata/springboot

springboot为你预期的版本库名称,可自定义)

创建成功后,进入springboot目录下

cd /application/svndata/springboot

进入目录,可以看见如下文件信息:

total 24
drwxr-xr-x 2 root root 4096 May  2 13:48 conf
drwxr-sr-x 6 root root 4096 May  2 13:48 db
-r--r--r-- 1 root root    2 May  2 13:48 format
drwxr-xr-x 2 root root 4096 May  2 13:48 hooks
drwxr-xr-x 2 root root 4096 May  2 13:48 locks
-rw-r--r-- 1 root root  229 May  2 13:48 README.txt

第四步:配置修改

进入已经创建好的版本库目录下

cd /application/svndata/springbooot/conf

conf目录下,一共存放三份重要的配置文件,如下:

total 12
-rw-r--r-- 1 root root 1080 May  2 13:48 authz
-rw-r--r-- 1 root root  309 May  2 13:48 passwd
-rw-r--r-- 1 root root 3090 May  2 13:48 svnserve.conf

authz:负责账号权限的管理,控制账号是否读写权限


passwd:负责账号和密码的用户名单管理


svnserve.conf:svn服务器配置文件


我们可以把authz,passwd这两份文件单独拷贝出来到application/svnpassword目录下,这样我们创建多个svn仓库的时候可以使用同一份账号和密码,方便管理。


1.编辑svnpassword/authz 文件(注意:[/]也是必须的)

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
#创建java组,组里有两个用户
java=lq,wyt
#这两个用户对springboot-aop有读写的权限
[springboot-aop:/]
lq=rw
wyt=rw
#这两个用户对sadoc有读写的权限
[sadoc:/]
#表示java组里面的用户对sadoc这个库有读写的权限
@java=rw
[springboot:/]
@java=rw
[/]
#所有的用户对所有的项目都有读的权限 [/foo/bar]
* = r

2.编辑 passwd 文件,添加两个用户

20190303102936959.png

如上所示,用户名为:lq,认证密码为:123456

3.编辑 /application/svndata/springboot/conf/svnserve.conf 文件(注意:配置的前面不能有空格,一定要顶格写)

20190303103435765.png

anon-access = none:表示禁止匿名用户访问。


auth-access = write:表示授权用户拥有读写权限。


password-db :指定用户名口令文件,即 passwd 文件。


authz-db :指定权限配置文件,即 authz 文件。


realm :指定认证域,即 /application/svndata目录。



第五步:防火墙开启,开放端口


多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题【注意:如果是阿里云,腾讯云的服务器,还需在安全组添加端口开启规则】

开放端口,svn默认的端口是3690
firewall-cmd --zone=public --add-port=3690/tcp --permanent
返回success为成功
命令含义: 
--zone #作用域 
--add-port=80/tcp #添加端口,格式为:端口/通讯协议 
--permanent #永久生效
重启防火墙:
systemctl restart firewalld.service 
关闭防火墙:
systemctl stop firewalld.service 
查看监听(Listen)的端口
netstat -lntp
检查端口被哪个进程占用
netstat -lnp|grep 3690

六:启动svn服务器

svnserve -d -r /application/svndata

启动成功后,可用ps -aux查看服务启动是否成功

ps -ef | grep 'svnserve'

 

七:客户端访问svn服务器

下载TortoiseSVN客户端使用

20190303103925209.png

弹出输入用户名和密码,输入即可访问


如下为例子:



遇到的问题小结:


问题1:执行svn命令:svn co svn://ip地址:3690/xxxx报错如下


修改svnserve.conf时,打开注释时,配置的前面有空格,应该顶格写。修改后即可


问题2:输入账号密码后,提示 svn: Authorization failed解决办法


把authz 文件 [/] 改为 [\] 试试

相关文章
|
5月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
6月前
|
安全 Linux Shell
使用SCP命令在CentOS 7上向目标服务器传输文件
以上步骤是在CentOS 7系统上使用SCP命令进行文件传输的基础,操作简洁,易于理解。务必在执行命令前确认好各项参数,尤其是目录路径和文件名,以避免不必要的传输错误。
676 17
|
7月前
|
Windows
Windows下版本控制器(SVN)-启动服务器端程序
Windows下版本控制器(SVN)-启动服务器端程序
257 4
|
6月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
2381 0
|
7月前
|
Linux
Linux下版本控制器(SVN) -服务器端环境搭建步骤
Linux下版本控制器(SVN) -服务器端环境搭建步骤
317 0
Linux下版本控制器(SVN) -服务器端环境搭建步骤
|
8月前
|
数据挖掘 Linux 数据库
服务器数据恢复—Linux系统服务器数据恢复案例
服务器数据恢复环境: linux操作系统服务器中有一组由4块SAS接口硬盘组建的raid5阵列。 服务器故障: 服务器工作过程中突然崩溃。管理员将服务器操作系统进行了重装。 用户方需要恢复服务器中的数据库、办公文档、代码文件等。
|
9月前
|
JavaScript Linux Python
在Linux服务器中遇到的立即重启后的绑定错误:地址已被使用问题解决
总的来说,解决"地址已被使用"的问题需要理解Linux的网络资源管理机制,选择合适的套接字选项,以及合适的时间点进行服务重启。以上就是对“立即重启后的绑定错误:地址已被使用问题”的全面解答。希望可以帮你解决问题。
489 20
|
10月前
|
存储 安全 Linux
CentOS 7.9系统备份:每日定期发送最新备份文件到另一台服务器。
注意,这个解决方案忽略了很多细节,例如错误处理和通知、备份版本控制、循环处理旧的备份文件等等。此外,你也应该尽量保持源服务器和目标服务器之间快速,稳定且安全的网络连接,并且目标服务器应该有足够的空间用于存放每天的备份文件。如果你需要更高级的备份解决方案,可能需要考虑一下使用专门的备份工具或者服务。
493 18
|
10月前
|
存储 运维 监控
深度体验阿里云系统控制台:SysOM 让 Linux 服务器监控变得如此简单
作为一名经历过无数个凌晨三点被服务器报警电话惊醒的运维工程师,我对监控工具有着近乎苛刻的要求。记得去年那次大型活动,我们的主站流量暴增,服务器内存莫名其妙地飙升到90%以上,却找不到原因。如果当时有一款像阿里云 SysOM 这样直观的监控工具,也许我就不用熬通宵排查问题了。今天,我想分享一下我使用 SysOM 的亲身体验,特别是它那令人印象深刻的内存诊断功能。
406 1
|
10月前
|
Linux 虚拟化 Docker
Linux服务器部署docker windows
在当今软件开发中,Docker成为流行的虚拟化技术,支持在Linux服务器上运行Windows容器。流程包括:1) 安装Docker;2) 配置支持Windows容器;3) 获取Windows镜像;4) 运行Windows容器;5) 验证容器状态。通过这些步骤,你可以在Linux环境中顺利部署和管理Windows应用,提高开发和运维效率。
1718 1