Setting up svnserve as a service on RHEL5/CentOS system

8,864

Solution 1

If you've not already got a script for starting the service in /etc/init.d, create one, then add links in the relevant runlevel dirs.

The process is described at http://queens.db.toronto.edu/~nilesh/linux/subversion-howto/

Solution 2

The fastest way to get it going would be to add the startup command to /etc/rc.local/. This is run at the end of the system boot.

The "proper" way is to use the init system. There's a file called /etc/init.d/skeleton which is a basic framework for making an init script for starting a service. Copy it to /etc/init.d/svnserve and customise it as needed. There's also plenty of examples of svnserve init files on the web. Once /etc/init.d/svnserver [start|stop] works as expected, you can then run chkconfig svnserve on. This init script will be then be started on boot, and stopped on shutdown.

Solution 3

To start svnserve at runlevel 3,4 and 5 try this :

chkconfig --level 345 svnserve on

To check if it's OK :

systemctl list-unit-files | grep *svn*

Screenshot for systemctl list-unit-files | grep *svn*

Note : before chkconfig you can check if service file already exists:

ls  /usr/lib/systemd/system/*svn*

screenshot for ls  /usr/lib/systemd/system/*svn*

Solution 4

Supervisor may be the easiest way to do this. It's available in EPEL, a high-quality 3rd party repository of packages for RHEL/CentOS.

rpm -ivh http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
yum install supervisor
chkconfig --levels 345 supervisor on

Edit /etc/supervisord.conf according the docs.

service start supervisor
Share:
8,864

Related videos on Youtube

Nick Peranzi
Author by

Nick Peranzi

Updated on September 17, 2022

Comments

  • Nick Peranzi
    Nick Peranzi over 1 year

    How can I configure svnserve to run as a service.

    svnserve -d -r /var/svn/
    

    just works until the server is restarted.


    Edit1: server details

    root@vps [~]# uname -a
    Linux vps.example.com 2.6.18-028stab070.14 #1 SMP Thu Nov 18 16:04:02 MSK 2010 x86_64 x86_64 x86_64 GNU/Linux
    
  • Nick Peranzi
    Nick Peranzi over 13 years
    I am looking at the sample script, but (1) I dont run it under any 'svn'-specific user. Currently I've been running svnserve -d ... as root. (2) I dont think I have the file startproc anywhere on my system.
  • Nick Peranzi
    Nick Peranzi over 13 years
    Hi @Niall - the file doesnt exist on the rhel/centos system that I have...
  • Niall Donegan
    Niall Donegan over 13 years
    Sorry, should be /etc/init.d/skeleton! Main post updated.
  • Nick Peranzi
    Nick Peranzi over 13 years
    Hmm... root@vps [~]# find / -name 'skeleton' didnt find anything
  • Nick Peranzi
    Nick Peranzi over 13 years
    any alternate thoughts?
  • Nick Peranzi
    Nick Peranzi over 13 years
    any thoughts on how i can do this?
  • Niall Donegan
    Niall Donegan over 13 years
    hmm, looks like /etc/init.d/skeleton is a Debian thing! The best bet is to look for the many svnserve init scripts available on the web, for example: mygeekproject.com/?p=152