1. Update local packages cache from repositories

apt-get update

2. Install Apache / PHP / MYSQL / Subversion / Zend Framework

apt-get install apache2 php5 libapache2-mod-php5 mysql-server php5-mysql subversion libapache2-svn zend-framework

3. Enable required modules. Module dav dav_svn are enabled by libapache2-svn package by-default, rewrite and dav_fs are other prerequisites

a2enmod rewrite dav_fs

4. Download tar.gz of USVN from http://www.usvn.info/download and scp to server

5. Extract the archive of USVN, move to /var/www, set permissions and create a files directory

tar -zxf usvn-usvn-
mv /var/www/usvn-usvn-1.2.0 /var/www/usvn
mkdir /var/svn/usvn/files
chown -R www-data:www-data /var/svn/usvn/
chmod -R 755 /var/svn/usvn/

6. Make vhost for USVN, enable it and restart apache

vi /etc/apache2/sites-available/usvn

Alias /usvn /var/svn/usvn/public
<Directory “/var/svn/usvn/public”>
Options +SymLinksIfOwnerMatch
AllowOverride All
Order allow,deny
Allow from all

a2ensite usvn
/etc/init.d/apache2 restart

7. Access The install URL to start the USVN installation

http://Server IP/usvn/install.php

The guide will proceed with the USVN installation

8. Edit apache2.conf file to add the block of code in it

vi /etc/apache2/apache2.conf

<Location /usvn/svn/>
ErrorDocument 404 default
DAV svn
Require valid-user
SVNParentPath /var/svn/usvn/files/svn
SVNListParentPath off
AuthType Basic
AuthName “USVN”
AuthUserFile /var/svn/usvn/files/htpasswd
AuthzSVNAccessFile /var/svn/usvn/files/authz

9. Restart Apache

/etc/init.d/apache2 restart

10. Login to USVN and Enjoy

http://Server IP/usvn/login/

Admin User: admin
Password  : (as selected while installation)