[thelist] CVS Desperation
Burhan Khalid
thelist at meidomus.com
Sun Oct 12 17:13:05 CDT 2003
Peter Smulders wrote:
> Hi Burhan,
>
> Burhan Khalid wrote:
>
>> ... headache trying to setup CVS for remote logins on a linux system.
>> CVS works fine locally, I can checkout and commit changes, but
>> whenever I try to login remotely, the server responds with "directory
>> not found" or "client closed connection". I can checkout files fine
>> with cvs (from a SSH), but when I try to logon to the server itself
>> (from the same machine, using the IP), it doesn't work.
>
>
>> Checked permissions (cvs user, cvs group) Edited the passwd file
>> under CVSROOT Created a separate cvs-only user and added that to
>> passwd file
>
>
>> Read the manual at cvshome.org and the "The CVS Handbook" Tried
>> logging in as my normal user (member of cvs group), cvs-only user,
>> even root.
>
>
> Shooting from the hip: have you pre-endcoded the password in the passwd
> file? Entering the password in plaintext will not work.
No its encoded. Just like /etc/passwd.
>
> Second shot: if you are using an empty password (as you may very well
> have tried), you may need to enter th
> at empty password at the connection prompt (if you get that far) by
> entering a space (or any character, in fact), followed by CTRL+U (which
> is the 'delete-to-beginning-of-line' terminal command). This makes the
> client think you entered a password, with the password being the empty
> one. I have seen cases where not entering a password was just not good
> enough for the client, even though the server would happily accept it.
Well, I didn't try the empty password thing. But all accounts have
passwords on them (even the cvs-only account). There are 4 accounts on
the system, root, my personal account (member of cvs group), cvs (member
of cvs group, what all the files are owned by), and cvs_user (member of
cvs group, just a test account). All except for cvs have passwords. The
cvs account is just so I can isolate permissions for the cvs files.
>
> Other than that, I am more than happy to debug with you. Can you tell me:
>
> - Server OS, cvs version?
Server is a gentoo box, running 2.4.30-gentoo-r6 kernel.
CVS is (direct from cvs -v) :
Concurrent Versions System (CVS) 1.11.6 (client/server)
> - Client OS, cvs version and flavour? (graphical, command line, etc)
Client is WinCVS on Windows (GUI), I have also used the cvs command line
via SSH (which works).
> - Connection details? Something like:
>
> 'Server, Solaris, cvs accessed through inetd, user/passwd internal to
> cvs setup (as opposed to hitchiking on system/host usernames, as in
> /etc/passwd ), client on Linux, plain TCP/IP connection to server'
Server is a gentoo box, static IP address on a local net. CVS is using
the passwd files under the CVSROOT directory for each repository. I am
adding the users via a script (cvsd-passwd) that is provided with the
package. CVS is not running under a jailed shell.
Client is on Windows XP box, same local net. I am connecting via IP and
not the hostname. There are no proxies to the linux box. SSH (using
Putty) works from the Windows XP computer.
> - Transcript (copy and paste, please, rather than paraphrasing) of a
> sample session.
Output from WinCVS :
cvs -d :pserver:burhankh at 192.168.1.102:/home/projects login
Logging in to :pserver:burhankh at 192.168.1.102:2401:/home/projects
cvs [login aborted]: Error reading from server 192.168.1.102: -1: No
such file or directory
***** CVS exited normally with code 1 *****
However, this works fine (PuTTY output) :
burhankh at sandbox burhankh $ export CVSROOT="/home/projects"
burhankh at sandbox burhankh $ cvs -Q co weather_server
And, after making a few modifications, I can also commit the changes :
burhankh at sandbox weather_server $ cvs ci -m "added a few things"
cvs commit: Examining .
Checking in index.php;
/home/projects/weather_server/index.php,v <-- index.php
new revision: 1.3; previous revision: 1.2
done
However, trying to access the server like so doesn't work :
burhankh at sandbox weather_server $ cvs -d
:pserver:burhankh at 192.168.1.102:/home/projects login
Logging in to :pserver:burhankh at 192.168.1.102:2401/home/projects
CVS password:
cvs [login aborted]: reading from server: Connection reset by peer
> As an aside: given you ask detailed and polite questions (like the one
> you asked here, enriched with answers to my questions above) you can get
> very good results from the cvs-users mailing list. Dig around on the
> cvshome.org site for details; I haven't been around that place for
> almost a year. It is (or at least used to be) an open forum, so you can
> ask questions without being a member.
I'll look into it, thanks. I just want to try out everything I can
possibly locally so that I can ask a "better" question at the mailing list.
>
> Having said that: if you have a learning curve to go with CVS, enduring
> the high list volume and (for some strange reason) high flamability of
> some members for a while can be very instructive. Last time I checked,
> the FAQ was of very little use, but the list archives are a real
> treasure trove. (since there is some cross-fertilisation with a usenet
> group, Google groups might also help)
Yes I read the FAQ, that didn't seem to get anywhere. Then I remembered
I had a PDF version of "The CVS Book" using which I was able to setup
the repository, and do some local cvs work.
Thanks for your response,
--
Burhan Khalid
thelist[at]meidomus[dot]com
http://www.meidomus.com
More information about the thelist
mailing list