From CSLabsWiki
Revision as of 14:31, 25 May 2010 by Mccarrms (talk | contribs)
Operating system: Ubuntu Gutsy
LDAP Support: No
Development Status: Stable
Status: Running

Svn is the virtual machine running the COSI subversion server.

Installed Packages

  • Those included in a Gutsy Debootstrap
  • emacs22-nox
  • nano
  • openssh-server
  • subversion
  • subversion-tools
  • apache2
  • libapache2-svn
  • sendmail

Configuration Files

Apache 2


<Location /svn>
  DAV svn
  SVNParentPath /var/svn/repos

  # our access control policy
  AuthzSVNAccessFile /var/svn/conf/authz

  # try anonymous access first, resort to real
  # authentication if necessary.
  Satisfy Any
  Require valid-user
  # how to authenticate a user
  AuthType Basic
  AuthName "Subversion repository"
  AuthUserFile /var/svn/conf/passwd


Directory Structure

   |-----REPO_3 ...

Authentication Files


user = {none | r | rw}
@group = {none | r | rw}

group = user1,user2


An htpasswd file containing the user/password combinations for the users referenced in the above file. To allow for anonymous checkout, add the permission line * = r to a repository.

Common Tasks

Adding a User

# htpasswd -m /var/svn/conf/passwd <username>
New password: <password>
Re-type new password: <password>
Adding password for user <username>

Adding a Repository

# svnadmin create /var/svn/repos/<reponame>
# chown -R www-data /var/svn/repos/<reponame>

Grant access to a User for a Repository

  • Edit the /var/svn/conf/authz file