linux配置SVN,添加用户,配置用户组的各个权限教程

简介: linux配置SVN,添加用户,配置用户组的各个权限教程

前言

今天组长要我给新员工添加svn 的权限,以及赋予他们权限访问指定的目录,于是就顺手写个教程吧,毕竟好记性不如烂笔头


一、xshell登陆服务器

用xshell登陆服务器,cd切换到服务器中svn的项目仓库目录中,然后切换到conf文件中,会看到3个文件,分别是


authz、passwd、svnserve.conf


linux操作熟练的同志们,可以直接在xshell里面操作,通过vi命令分别去修改里面的内容,我是知道命令,但是不太熟练,通过vi操作不怎么方便,于是我这里就偷懒,直接通过sheel里面的【新建文件传输】按钮进入了,然后找到这三个文件,下载下到本地,然后进行编辑操作。


 


二、编辑svnserve.conf文件,进行svn配置


首先编辑svnserve.conf主配置文件,主要是对以下几项修改


[general]


anon-access = none    #取消匿名访问


auth-access = write    #授权用户有可写权限


password-db = passwd    #指定用户配置文件,后面会用到


authz-db = authz    #指定权限配置文件,后面会用到



如果后面大家要用到组权限的话,大家看authz-db = authz 前面应该会有 # 号键,记得去掉,这样才能在下面分配组权限的时候,才能起作用。


 

三、编辑passwd文件,添加用户

建立svn用户以及密码:

[users]
aaa=aaa123
bbb=bbb123
ccc=ccc123
ddd=ddd123

 

四、编辑authz,配置用户组和权限

配置组:

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
# [/foo/bar]
# harry = rw
# &joe = r
# * =
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
总管理员 = admin
开发组 = qqq,www,eee,rrr
运维组 = ttt,yyy,uuu,iii
测试组 = aaa,bbb,ccc,ddd

配置各个组权限:

[/]                   #[/]表示是svn根目录,标签后的用户拥有根目录权限
@总管理员 = rw         #分配给总管理员用户组根目录的读写权限
@开发组 = rw           #分配给开发组用户组根目录的读写权限
*=                    #没有分配权限的用户没有读写权限
[/运维知识库]          #根目录下面有一个[运维知识库]文件夹,
@运维组 = rw           #分配给运维组用户组根目录的读写权限
zzz = rq              #分配读写权限给zzz用户,为单个用户分配权限
[/测试知识库]
@测试组 = rw

拓展:这样的目录还是简单的,那假如目录是多级目录呢


helloword仓库:


    abc项目


     def项目


             产品部


             开发部


             数据部


     运维知识库


     测试知识库



现在对于def项目中,我不想让产品部的人看到开发部和数据部的目录下面的数据怎么办?可以通过 *=  来设置,没有设置权限的人统统不能访问,* =  这一句的目的,就是割断权限继承性,使得管理员可以定制某个目录及其子目录的权限,从而完全避开其父目录权限设置的影响

 

五、替换原来的三个conf文件并且重启svn

最后就是将自己修改的svnserve.conf ,passwd,authz 三个目录替换原来的三个文件就可以了


然后用下面的命令重启一下svn


查看svn进程:ps -ef |  grep svn      


强制杀死进程:kill - 9 进程号


重启svn:svnserve -d -r /opt/svn


 

最后看看是不是成功了,可以在本地测试一下,看看对应的权限是不是已经有了,不是该组的用户应该不能访问没有赋予权限的目录的

相关文章
|
1月前
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
45 1
linux特殊权限!!
|
22天前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
1月前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
65 9
|
1月前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
43 5
|
2月前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
70 2
|
2月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
496 3
|
关系型数据库 MySQL Linux
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
243 0
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
92 8
|
1月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
251 6
|
1月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
80 3