centos7自带svn服务,现需要创建多个仓库,并实现用户读写功能
创建svn版本库
mkdir /home/svn
mkdir /home/svn/conf
mkdir /home/svn/yk1
mkdir /home/svn/yk2
svnadmin create /home/svn/yk1
svnadmin create /home/svn/yk2
进入版本库yk1的配置文件路径/home/svn/yk1/conf,把authz和passwd文件复制至/home/svn/conf路径
cd /home/svn/yk1/conf
cp authz /home/svn/conf
cp passwd /home/svn/conf
完成后,svn目录的结构应该如下所示
版本库配置文件修改
修改/home/svn/yk1/conf下的svnserve.conf文件,需要编辑的地方:
- anon-access = none 禁止匿名用户访问
- auth-access = write 授权用户拥有读写权限
- password-db = passswd 指定用户名口令文件,即 passwd 文件
- authz-db = authz 指定权限配置文件,即 authz 文件
- realm = /home/svn/yk1/:指定认证域,即 /home/svn/yk1/目录
修改/home/svn/yk2/conf下的svnserve.conf文件,需要编辑的地方同上
realm = /home/svn/yk2
svn配置文件修改
修改账号密码,添加一个admin用户,密码123456
cd /home/svn/conf
vi passwd
修改权限
[grops]
admin=admin
意思是添加一个分组,分组名为admin,包含用户名admin
[/]
@admin=rw
意思是分组admin所有成员具有根目录的rw权限
启动svn服务
注意实际的svn服务路径!
svnserve -d -r /home/svn
查看服务是否启动
ps -ef | grep 'svnserve'
win10使用svn工具测试
yk1仓库地址
svn://192.168.38.34/yk1
yk2仓库地址
svn://192.168.38.34/yk2
测试读,即pull
测试写,即push