Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

CVS service on Linux

Status
Not open for further replies.

kentcb

Programmer
Feb 19, 2004
1
AU
Hello,

I'm trying to get CVS up and running on a Linux box (redhat). I've managed to check out / commit from that box with no problems. However, when I try and access the repository from another machine (Windows) I get:

cvs.exe [checkout aborted]: connect to cvshost:2401 failed: No connection could be made because the target machine actively refused it.

I think this is because the CVS service isn't running on cvshost (but I could be wrong). So I tried this on the Linux box:

$ chkconfig cvs on

but that gives:

error reading information on service cvs: No such file or directory

I'm a bit of a Linux noob so I don't really know how to rectify this. I guess I need to somehow make the CVS service available but I don't know how.

I've already added the appropriate line to /etc/inetd.conf:

cvspserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/usr3/CVSROOT pserver

and rebooted (just in case). Anyone got any thoughts on this?

Thanks,
Kent
 
I had a similar problem. From what I understand it's because the user logging in can't authenticate. I can't give you a step-by-step process, as I don't remember everything, but I can give you generality:

1) You need to make a user an admin to access the admin functions. Edit a file called .admin (I think) and put your user name there.
2) You need to create a user in the OS that has access to the directories. useradd will do this, and then you need to have this user have appropriate access rights to the repository.
3) Now you need to map a CVS user to this OS user. cvs admin useradd... something... Look in the manual. You don't want a "real" user, you want one that points to a user. There are some command flags that let you specify the CVS username, and the local user that it maps to. That's what you want.

Once you've done that you should be able to log in with that user from a remote machine.

Ultimately what it comes down to is that on the host machine you are logged in as someone who can access it, but in order for someone to access it in a way other than the :local: way CVS needs to know of the user explicitly. Doing the above accomplishes that.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top