We are going to run SVN under xinetd for low resource usage.
apt-get install xinetd subversionadduser --system --home /var/svn --disabled-password --disabled-login --group svnsvnadmin create /var/svn/repositoriesRun the following commands to insert settings into /var/svn/repositories/conf/svnserve.conf
cat >/var/svn/repositories/conf/svnserve.conf <<EOF
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
[sasl]
EOFEdit /var/svn/repositories/conf/passwd To add a user and a password.
Insert:
[users]
YOUR_USERNAME = YOUR_PASSWORDEdit /var/svn/repositories/conf/authz to modify user permission.
Example:
[/]
YOUR_USERNAME = rw
[/example.com]
YOUR_USERNAME = rw
other = r</pre>Note: r = read only; rw = read & write
Run the following commands to create an xinetd configuration file for Subversion at /etc/xinetd.d/svnserve
cat >/etc/xinetd.d/svnserve <<EOF
service svn
{
port = 3690
socket_type = stream
protocol = tcp
wait = no
user = svn
server = /usr/bin/svnserve
server_args = -i -r /var/svn/repositories
}
EOFRestart xinetd, and you are done.
/etc/init.d/xinetd restartMake sure Subversion is running using the following command:
netstat -ant | grep ':3690'You should see something like this if Subversion is running:
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTENRemember to open the port 3690 If you have a firewall installed.
You can now access your Subversion repository using svn://YOUR_HOST/ from any SVN client.