专栏首页灵儿的笔记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

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


参考文章:

https://blog.csdn.net/xiaoxiangzi520/article/details/81178584

https://blog.csdn.net/zjh_746140129/article/details/81193005

感谢原作者的分享,让技术人能够更快的解决问题

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • jdk8获取当前时间|时间加减|java8时间格式化|时间处理工具|时间比较|线程安全的时间处理方法

    在很久之前,我总结了一些jdk7版本之前的关于时间处理的一些公共方法,日期转换成字符串、指定时间加上指定天数后的日期、获取上周周一时间 等等;具体的可以戳链接查...

    小小鱼儿小小林
  • java读取excel文件单元格英文出现乱码问题的解决方法

    小编今天测试读取excel文件,并且取其中的几个单元格作为文件名称的时候,发现文件名出现了乱码,毫无疑问,肯定就是读取excel的时候,取出来就出现了乱码,如图...

    小小鱼儿小小林
  • 文档对象模型

    DOM是针对HTML和XML文档的一个API(应用程序编程接口),DOM描绘了一个层次化的节点树,允许开发人员添加,移除,修改页面的某一部分。1998年10月D...

    小小鱼儿小小林
  • 交易Transaction【区块链生存训练】

    日常生活中,我们每天都会与他人进行各种交易,对于“交易”这个概念感觉再熟悉不过了。比如:今天我去吃凉皮,支付给商家5元钱,非常简单吧,通常的交易记录可以是这样的...

    申龙斌
  • Jenkins X--(4)如何解决镜像下载不了问题

    从这篇文章开始就写写如何在虚拟机中通过minikube搭建一个K8s集群,并在这个K8s集群里安装Jenkins X,体验一把云原生下的CICD框架是如何运行的...

    DevOps亮哥
  • 终于有人把 CountDownLatch,CyclicBarrier,Semaphore 说明白了!

    在 JUC 下包含了一些常用的同步工具类,今天就来详细介绍一下,CountDownLatch,CyclicBarrier,Semaphore 的使用方法以及它们...

    敖丙
  • java8学习整理二

    java8不但可以提高代码的运行的性能,而且实现起来很优雅,因此学习它是不错的选择。

    路行的亚洲
  • 谷歌发布支付新应用 Hands Free:真正的刷脸付款!

    镁客网
  • 巨星安吉丽娜·朱莉:有了它,我的精彩才能继续

    2013年,好莱坞巨星安吉丽娜·朱莉突然发表声明:“医生建议我提早十年进行预防性手术——乳腺切除,我的母亲就是49岁时被确诊为癌症,而我现在已经39岁了。”医学...

    云加社区
  • zabbix实现Python邮件报警

    zabbix是个非常强大的监控工具,可以监控linux和windows的服务器数据,也可以通过自定义key来扩展默认的监控项,但是自带的邮件报警提供的信息却不太...

    py3study

扫码关注云+社区

领取腾讯云代金券