当前位置: 首页 > article >正文

Ubuntu22.0.4安装svn服务

1、检查是否已安装

1.1、检查是否已安装

svnserve --version

1.2、删除SVN遗留文件

sudo apt-get remove --purge subversion

2、安装svn

apt-get install subversion

3、新建存储目录

sudo mkdir  /data/svn
sudo mkdir  /data/svn/repository

4、更改文件夹的读写权限

sudo chmod -R 777 /data/svn/repository

5、创建SVN版本库

sudo svnadmin create /data/svn/repository

6、赋予db权限

cd /data/svn/repository
sudo chmod -R 777 db

7、配置SVN-认证机制

cd /data/svn/repository/conf
sudo vim svnserve.conf

简单的修改几处配置:(去掉前面的#,并且顶格,不然可能会报错)

  • 匿名用户可读anon-access = read(可改成none,即不可读)
  • 权限用户可写auth-access = write
  • 密码文件为password-db = passwd
  • 权限文件为authzauthz-db = authz

配置项含义:

anon-access = none|read|write 决定非授权用户的访问级别。none 表示无访问权限,read 表示只读,write 表示可读可写,默认为 read。
auth-access = none|read|write 决定授权用户的访问级别,使用与上面相同的访问级别。默认为 write。

password-db = filename 指定账号密码数据库文件名。filename 是相对仓库中 conf 目录的位置,也可以设置为绝对路径,默认为passwd。

authz-db = filename 指定权限配置文件名,filename 是相对仓库中 conf 目录的位置,也可以设置为绝对路径,默认为authz。

realm = realm-name 指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,建议使用相同的账号密码数据库文件passwd。

8、配置SVN-用户权限

sudo vim authz
8.1、直接用户权限
[/] //所有项目
user1 = rw
user2 = rw
* = r   //所有的组都具有读权限
8.2、用户组
[groups]
admin =user1,user2  //admin用户组由账户user1,user2组成

[/] //所有项目
@admin = rw   //admin用户组具有读(r)写(w)权限
* = r   //所有的组都具有读权限
8.3、多项目管控
  • 创建项目
cd /data/svn
svnadmin create p1
svnadmin create p2
  • 创建管理用户权限
cd /data/svn/repository/conf
mkdir -p /data/svn/conf
cp authz passwd  /data/svn/conf/
  • 修改p1的svnserve.conf文件:
 anon-access = none
 auth-access = write 
 password-db = /data/svn/conf/passwd 
 authz-db = /data/svn/conf/authz 
 realm = p1 

修改p2的svnserve.conf文件:

anon-access = none
 auth-access = write 
 password-db = /var/svn/conf/passwd 
 authz-db = /var/svn/conf/authz 
 realm = p2
  • 修改password文件
    sudo vim passwd
[users]
a= 123
b= 123
c= 123
d= 123
  • 修改authz文件
 [groups] //分组
 p1user = a,b
 p2user = c,d
 ​
 [/]
 * = #以上没有定义的用户都没有任何权限
​
 [p1:/] //p1的访问控制,c、d无法访问
 @p1user = rw
 ​
 [p2:/] //p2的访问控制,a、b无法访问
 @p2user = rw

配置SVN-访问用户

sudo vim passwd

设置密码

[users]
user1 = 123
user2 = 123

启动服务器

启动地址为仓库/home/svn/repos的上级目录/home/svn。

svnserve -d -r /data/svn

查看svnserve是否已经运行

ps aux | grep svnserve

关闭服务

killall svnserve

访问

单项目
svn://ip地址/repository
多项目
 访问项目p1 URL
 svn://IP/p1
 ​
 访问项目p2 URL
 svn://IP/p1

http://www.kler.cn/news/107092.html

相关文章:

  • HarmonyOS原生分析能力,即开即用助力精细化运营
  • Vue将Element Plus 进行自定义封装
  • 【Linux】安装VMWare虚拟机(安装配置)和配置Windows Server 2012 R2(安装配置连接vm虚拟机)以及环境配置
  • cesium开发引入方式
  • 一体化运维监控:数据中心运维可视化的指挥中枢
  • 轻量封装WebGPU渲染系统示例<3>-纹理立方体(源码)
  • JVM进阶(3)
  • macOS Sonoma 14.1正式版(23B74)发布(可下载黑白苹果镜像)
  • LabVIEW开发基于图像处理的车牌检测系统
  • C/C++面试常见问题——const关键字的作用和用法
  • DAC芯片AD5689控制代码SPI接口FPGA代码,视频
  • Qt文件 I/O 操作
  • 深度学习标注工具(包括自动标注)总结——持续更新
  • 不同网段的IP怎么互通
  • c语言基础:L1-060 心理阴影面积
  • 一文详解汽车电CAN总线
  • SpringMVC(下)
  • mysql bin_log日志恢复数据
  • Android framework服务命令行工具框架 - Android13
  • 高速下载b站视频的解决方案
  • UI自动化测试是什么?什么项目适合做UI自动化测试
  • 24年FRM备考知识点以及一级公式表
  • 【机器学习】KNN算法-模型选择与调优
  • 力扣每日一题73:矩阵置零
  • 2023CSP-J题解
  • python 字典dict和列表list的读取速度问题, range合并
  • 笔记-《RabbitMQ实战指南》
  • Oracle 数据库的锁排查方法
  • Linux 系统调用IO口,利用光标偏移实现文件复制
  • Kotlin 使用@BindingAdapter编译出错