Ubuntu Server 安装 Subversion实现精细的目录访问权限控制 安装Subversion和Apache sudo apt-get install subversion li

Ubuntu Server 安装 Subversion实现精细的目录访问权限控制

 

  1. 安装Subversion和Apache

    sudo apt-get install subversion libapache2-svn

  2. 创建组subversion,并配置权限将自己和www-data(Apache用户)加入组成员

    sudo addgroup subversion

     sudo usermod -G subversion -a www-data

  3. 创建代码仓库, 这里我的项目是arlicle

    sudo mkdir /home/svn

     cd /home/svn 

    sudo mkdir arlicle

     sudo chown -R root:subversion arlicle

     sudo svnadmin create /home/svn/arlicle

  4. 对所有使用成员设置权限

    sudo chmod -R g+rws arlicle

     sudo chown -R root:subversion arlicle

  5. 设置用户访问权限 
    修改/etc/apache2/mods-available/dav_svn.conf

    DAV svn 

    SVNPath /home/svn/arlicle

     AuthType Basic 

    AuthName "arlicle subversion repository" 

    AuthUserFile /etc/subversion/passwd Require valid-user

  6. 重启Apache

    sudo /etc/init.d/apach2 restart

  7. 创建密码文件和访问用户并设置密码

    创建密码文件 和用户for 首次创建

    sudo htpasswd -c /etc/subversion/passwd edison

    添加一个用户

    sudo htpasswd -c /etc/subversion/passwd edison2

  8. 这样就可以访问代码仓库了

    svn co http://www.arlicle.com/svn/arlicle arlicle --username edison

  9. 如果要设置更详细的访问权限, 
    修改/etc/apache2/mods-available/dav_svn.conf

    DAV svn 

    SVNPath /home/svn/arlicle

     AuthType Basic 

    AuthName "arlicle subversion repository" 

    AuthUserFile /etc/subversion/passwd 

    AuthzSVNAccessFile /etc/subversion/accessfile

     Require valid-user

然后编辑accessfile文件,控制每个目录的访问和读写权限

[arlicle:/]
user1 = r
user2 = r
user3 = r
[arlicle:/folder1]
user1 = rw
[arlicle:/folder2]
user2 = rw
  1. 也可以创建多个代码仓库

修改/etc/apache2/mods-available/dav_svn.conf

<Location /svn/arlicle1>
DAV svn
SVNPath /home/svn/arlicle1
AuthType Basic
AuthName "arlicle subversion repository"
AuthUserFile /etc/subversion/passwd
AuthzSVNAccessFile /etc/subversion/accessfile
Require valid-user
</Location>

<Location /svn/arlicle2>
DAV svn
SVNPath /home/svn/arlicle2
AuthType Basic
AuthName "arlicle subversion repository"
AuthUserFile /etc/subversion/passwd
AuthzSVNAccessFile /etc/subversion/accessfile
Require valid-user
</Location>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值