linux配置SVN,添加用户,配置用户组的权限

linux配置SVN,添加用户,配置用户组的权限,第1张

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

authz、passwd、svnserve.conf

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

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

建立svn用户以及密码:

配置组:

配置各个组权限

保存修改后的svnserve.conf ,passwd,authz 三个文件

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

查看svn进程:ps -ef | grep svn 或者 ps aux | grep svn

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

重启svn(/home/svn为自己的目录地址):svnserve -d -r /home/svn

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

helloword仓库:

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

直接开放svnserve的端口就可以了,默认端口是3690

如果selinux开启了,它会阻止文件的写入,从仓库中拉去正常,但上传的时候会出现 不能打开文件"***/db/txn-current-lock"权限不够

如果出现semanage未定义,可以参考 CentOS7 中安装semanage来设置selinux

仓库目录为 /home/svn/test ,如果要删除版本仓库直接删除目录就可以了 rm -rf /home/svn/test

在仓库目录 /home/svn/test 的 conf 目录中会有三个文件

修改配置

修改配置添加账号密码,以 账号=密码 的格式配置, = 号二边尽量不要存在空格

权限管理分为组管理和目录权限管理

多个创建可以共用一套账号和密码权限管理。也可以用不同的账号密码管理,如果用不同的配置少单仓库类似,修改每个仓库conf下的账号和权限文件就可以了。下面说一下共用账号权限文件的情况。

在仓库目录 /home/svn 目录中创建authz文件和passwd文件。

修改配置各仓库下conf/svnserve.conf。将password-db和authz-db指向/home/svn/目录下的文件

修改/home/svn/passwd配置添加账号密码,以 账号=密码 的格式配置, = 号二边尽量不要存在空格

修改/home/svn/authz权限管理分为组管理和目录权限管理

如果单仓库以/home/svn启动,此时访问的地址会有仓库名。 svn://ip/test

访问地址分别为:

编辑 /etc/sysconfig/svnserve 文件,修改 OPTIONS="-r /var/svn" 参数改为svn仓库目录 OPTIONS="-r /home/svn"

设置开机启动

修改后也可以用systemctl来启动、停止、重启

svnserve启动后,修改authz和passwd文件是时实生效的,并不需要重启服务

有时随着仓库越来越多,权限配置也越来越多时,会出现一些配置错误,导致访问时出现无法加载权限验证之前的错误,这个时候我们可以将svn服务器的日志打印出来,看些配置出错了。

停止svn服务器,重新附加log-file参数输入日志到指定文件


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/5930070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-08
下一篇 2023-03-08

发表评论

登录后才能评论

评论列表(0条)

保存