Linux setup a Concurrent Versioning System (CVS) howto

last updated in Categories

Q. I am planning to use Concurrent Versioning System. I am using both Red Hat and Fedora Linux. How do I setup a CVS server?

A. Concurrent Versioning System (CVS) a widely used version control system for software development or data archiving solutions.

From the wiki page, “CVS keeps track of all work and all changes in a set of files, typically the implementation of a software project, and allows several (potentially widely separated) developers to collaborate”.

CVS Configuration – Install CVS

Use rpm or up2date or yum command to install cvs:# rpm -ivh cvs*OR# up2date cvsOR# yum install cvsCreate a CVS user# useradd cvs
# passwd cvs
Above command will create a user cvs and group cvs with /home/cvs home directory.

Configure CVS

Open /etc/profile and append following line:# vi /etc/profileAppend following line:export CVSROOT=/home/cvsSave the file and exit to shell promot.

Make sure your /etc/xinetd.d/cvs looks as follows:# less /etc/xinetd.d/cvsOutput:

service cvspserver
       disable            = no
       socket_type    = stream
       wait                = no
       user                = cvs
       group              = cvs
       log_type          = FILE /var/log/cvspserver
       protocol          = tcp
       env                 = '$HOME=/home/cvsroot'
       bind                =
       log_on_failure  += USERID
       port                = 2401
       server             = /usr/bin/cvs
       server_args     = -f --allow-root=/home/cvsroot pserver

Note: Replace with your actual server IP address.

Restart xinetd:# service xinetd restartAdd users to this group (see this howto for more info)# adduser username -g cvs
# passwd username
Client configuration
Finally user can connect to this CVS server using following syntax:
$ export CVSROOT=:pserver:vivek@
$ cvs loginWhere,

  • vivek – username
  • – CVS server IP

See also:

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

8 comment

  1. some of the points you are missing vivak
    you didnt specified how to create repository,initilazing the cvs repository and import already existing projects
    any way nice artical

  2. I am sory to ask again the same thing as i had asked for the CVS client installation on Linux i have already CVS server installed on one linux machine now i want to install CVS client on another linux machine please furnish a step by step guideline to acheive this.

    Waiting for reply.
    Ghulam Mohmad

  3. hey thanx for this document!!!!
    i have configured cvs successfully…. and its running on port 2401 by default..
    when i tried to connect ….ex.
    cvs -d :pserver:username@server_name:/usr/local/cvsroot login
    i got
    :unrecognized auth response from host usage: options …..

    please help me !!!!!
    any idea why this happens ?
    username is system account has rights to access cvs repository …

  4. Yes a very helpful steps to configure to CVS in linux. But now i want to configure my other linux machine as a CVS client. For that what will be the steps and where can be the software obtained.

  5. cvs login: authorization failed: server rejected access to /home/cvsrep for user cvs

    Plz resolve the Issue

  6. Article was of great help. Thank you very much for sharing it. I would like to point out that, I couldn’t connect using pserver as the connection type instead I could manage connecting to server using extssh.

    Still, have a question? Get help on our forum!