You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Bradley Wagner <br...@hannonhill.com> on 2006/04/08 06:35:20 UTC

svn+ssh continues to confuse on Mac OS X

I can say I no longer have any idea what causes svn+ssh to work  
sometimes and not work others. I had installed subversion 1.3.1  
binaries from Metissian on a Mac OS X machine at work. I was not able  
to connect through ssh with the notorious "svnserve: command no found  
error" which I read about in the FAQ. However, I installed the same  
binaries on another Mac OS X and had no problems at all connecting  
over svn+ssh with no configuration needed.

Stranger still, I removed all references to /usr/local/bin/ from my  
path on this second machine in the /etc/profile and /etc/bashrc and  
my account .bash_profile. I verified that this was true because when  
logged into the computer via ssh, I had to qualify all the svn  
commands with their full path. However, even then, when the svn  
commands were nowhere to be found in the path, I could still connect  
to this machine with svn+ssh with no message about svnserve not  
found. Frankly, at this point, I don't know how the command could  
have been found at all.

NOTE: i'm not using the public key method to connect over ssh so  
there's no chance it was determining the path from the "command"  
specified in the public key.

Any clues folks?

Bradley

-------------------------------------------------------
Bradley Mitchell Wagner
Software Developer
Hannon Hill Corporation
main: (678) 904-6900 ext. 115
email: bradley.wagner@hannonhill.com
-------------------------------------------------------



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: svn+ssh continues to confuse on Mac OS X

Posted by Mark Lacas <ju...@stuffthis.net>.
I used darwin ports to install Subversion on many OSX boxes and all  
works perfectly.

sudo port install apache2
sudo port install subversion +mod_dav_svn

I can use http://, svn+ssh or svn file:// to access my repositories.

Hope this helps,
ml

On Apr 7, 2006, at 11:35 PM, Bradley Wagner wrote:

> I can say I no longer have any idea what causes svn+ssh to work  
> sometimes and not work others. I had installed subversion 1.3.1  
> binaries from Metissian on a Mac OS X machine at work. I was not  
> able to connect through ssh with the notorious "svnserve: command  
> no found error" which I read about in the FAQ. However, I installed  
> the same binaries on another Mac OS X and had no problems at all  
> connecting over svn+ssh with no configuration needed.
>
> Stranger still, I removed all references to /usr/local/bin/ from my  
> path on this second machine in the /etc/profile and /etc/bashrc and  
> my account .bash_profile. I verified that this was true because  
> when logged into the computer via ssh, I had to qualify all the svn  
> commands with their full path. However, even then, when the svn  
> commands were nowhere to be found in the path, I could still  
> connect to this machine with svn+ssh with no message about svnserve  
> not found. Frankly, at this point, I don't know how the command  
> could have been found at all.
>
> NOTE: i'm not using the public key method to connect over ssh so  
> there's no chance it was determining the path from the "command"  
> specified in the public key.
>
> Any clues folks?
>
> Bradley
>
> -------------------------------------------------------
> Bradley Mitchell Wagner
> Software Developer
> Hannon Hill Corporation
> main: (678) 904-6900 ext. 115
> email: bradley.wagner@hannonhill.com
> -------------------------------------------------------
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: users-help@subversion.tigris.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: svn+ssh continues to confuse on Mac OS X

Posted by Duncan Murdoch <mu...@stats.uwo.ca>.
On 4/8/2006 1:52 PM, Bradley Wagner wrote:
> On Apr 8, 2006, at 1:20 PM, Duncan Murdoch wrote:
> 
>> I have a fairly simple setup, so in fact sshd leaves setting the  
>> path to my shell (bash).  It gets a basic one from /etc/profile,  
>> and modifies it in ~/.bashrc.  I don't know if this is a standard  
>> setup or not.
> 
> Duncan, I have located where this path gets set and it is indeed  
> in .bashrc. Thanks for your help. I'm not sure why it ignores  
> commands in /etc/profile but respects those in $HOME/.bashrc but that  
> seems to be place where it gets set. While we're on the topic, do you  
> know the difference between .bash_profile and .bashrc in these two  
> instances? I always thought they were synonymous but ssh clearly  
> reads in .bashrc while ignoring .bash_profile.

The bash man page explains this as follows:

  ~/.bash_profile
        The personal initialization file, executed for login shells
  ~/.bashrc
        The individual per-interactive-shell startup file

A  login shell is one whose first character of argument zero is a -, or
one started with the --login option.

An interactive shell is one started without  non-option  arguments  and
without the -c option whose standard input and error are both connected
to terminals (as determined by isatty(3)), or one started with  the  -i
option.   PS1 is set and $- includes i if bash is interactive, allowing
a shell script or a startup file to test this state.

Duncan Murdoch

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: svn+ssh continues to confuse on Mac OS X

Posted by Bradley Wagner <br...@hannonhill.com>.
On Apr 8, 2006, at 1:20 PM, Duncan Murdoch wrote:

> I have a fairly simple setup, so in fact sshd leaves setting the  
> path to my shell (bash).  It gets a basic one from /etc/profile,  
> and modifies it in ~/.bashrc.  I don't know if this is a standard  
> setup or not.

Duncan, I have located where this path gets set and it is indeed  
in .bashrc. Thanks for your help. I'm not sure why it ignores  
commands in /etc/profile but respects those in $HOME/.bashrc but that  
seems to be place where it gets set. While we're on the topic, do you  
know the difference between .bash_profile and .bashrc in these two  
instances? I always thought they were synonymous but ssh clearly  
reads in .bashrc while ignoring .bash_profile.

Bradley

-------------------------------------------------------
Bradley Mitchell Wagner
Software Developer
email: bradley.wagner@hannonhill.com
-------------------------------------------------------

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: svn+ssh continues to confuse on Mac OS X

Posted by Duncan Murdoch <mu...@stats.uwo.ca>.
On 4/8/2006 12:35 PM, Bradley Wagner wrote:
> Wow, thanks for that suggestion. You are exactly right. On one my  
> machine /usr/local/bin is in ssh's PATH and on the other it is not.  
> Hence the disparity. Is there a way to manually configure this PATH?  
> As far as I know I just did two vanilla installs of Mac OS X Tiger.  
> However, the PATH on the machine that does accept svn+ssh connections  
> includes some portions it looked like I must have manually added  
> somehow. Does ssh read from somwhere to determine its path?

It's sshd who sets up the shell that runs the command sent from ssh. 
There's a relatively complicated process it goes through to do this; you 
should find it described in "man sshd" (but I've never used OS X, so it 
might be somewhere else).

I have a fairly simple setup, so in fact sshd leaves setting the path to 
my shell (bash).  It gets a basic one from /etc/profile, and modifies it 
in ~/.bashrc.  I don't know if this is a standard setup or not.

Duncan Murdoch

> 
> Thanks for your help,
> Bradley
> 
> -------------------------------------------------------
> Bradley Mitchell Wagner
> Software Developer
> email: bradley.wagner@hannonhill.com
> -------------------------------------------------------
> 
> 
> On Apr 8, 2006, at 6:25 AM, Duncan Murdoch wrote:
> 
>> On 4/8/2006 2:35 AM, Bradley Wagner wrote:
>>> I can say I no longer have any idea what causes svn+ssh to work
>>> sometimes and not work others. I had installed subversion 1.3.1
>>> binaries from Metissian on a Mac OS X machine at work. I was not  
>> able
>>> to connect through ssh with the notorious "svnserve: command no  
>> found
>>> error" which I read about in the FAQ. However, I installed the same
>>> binaries on another Mac OS X and had no problems at all connecting
>>> over svn+ssh with no configuration needed.
>>>
>>> Stranger still, I removed all references to /usr/local/bin/ from my
>>> path on this second machine in the /etc/profile and /etc/bashrc and
>>> my account .bash_profile. I verified that this was true because when
>>> logged into the computer via ssh, I had to qualify all the svn
>>> commands with their full path. However, even then, when the svn
>>> commands were nowhere to be found in the path, I could still connect
>>> to this machine with svn+ssh with no message about svnserve not
>>> found. Frankly, at this point, I don't know how the command could
>>> have been found at all.
>>>
>>> NOTE: i'm not using the public key method to connect over ssh so
>>> there's no chance it was determining the path from the "command"
>>> specified in the public key.
>>>
>>> Any clues folks?
>> Sounds like a difference in the sshd configuration, assuming you're  
>> doing both connection attempts from the same client (so it's not a  
>> client config problem).  What I'd suggest is that you do some  
>> simple diagnostic tests.  For example, try
>>
>>  ssh server printenv PATH
>>
>> to tell you the path that svn will see when it connects, and
>>
>>  ssh server which svnserve
>>
>> to tell you where the svnserve command is located on the server  
>> (assuming it's findable).  In these cases "server" should be the  
>> path to the server that you're testing.
>>
>> Duncan Murdoch
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: svn+ssh continues to confuse on Mac OS X

Posted by Bradley Wagner <br...@hannonhill.com>.
Wow, thanks for that suggestion. You are exactly right. On one my  
machine /usr/local/bin is in ssh's PATH and on the other it is not.  
Hence the disparity. Is there a way to manually configure this PATH?  
As far as I know I just did two vanilla installs of Mac OS X Tiger.  
However, the PATH on the machine that does accept svn+ssh connections  
includes some portions it looked like I must have manually added  
somehow. Does ssh read from somwhere to determine its path?

Thanks for your help,
Bradley

-------------------------------------------------------
Bradley Mitchell Wagner
Software Developer
email: bradley.wagner@hannonhill.com
-------------------------------------------------------


On Apr 8, 2006, at 6:25 AM, Duncan Murdoch wrote:

> On 4/8/2006 2:35 AM, Bradley Wagner wrote:
> > I can say I no longer have any idea what causes svn+ssh to work
> > sometimes and not work others. I had installed subversion 1.3.1
> > binaries from Metissian on a Mac OS X machine at work. I was not  
> able
> > to connect through ssh with the notorious "svnserve: command no  
> found
> > error" which I read about in the FAQ. However, I installed the same
> > binaries on another Mac OS X and had no problems at all connecting
> > over svn+ssh with no configuration needed.
> >
> > Stranger still, I removed all references to /usr/local/bin/ from my
> > path on this second machine in the /etc/profile and /etc/bashrc and
> > my account .bash_profile. I verified that this was true because when
> > logged into the computer via ssh, I had to qualify all the svn
> > commands with their full path. However, even then, when the svn
> > commands were nowhere to be found in the path, I could still connect
> > to this machine with svn+ssh with no message about svnserve not
> > found. Frankly, at this point, I don't know how the command could
> > have been found at all.
> >
> > NOTE: i'm not using the public key method to connect over ssh so
> > there's no chance it was determining the path from the "command"
> > specified in the public key.
> >
> > Any clues folks?
>
> Sounds like a difference in the sshd configuration, assuming you're  
> doing both connection attempts from the same client (so it's not a  
> client config problem).  What I'd suggest is that you do some  
> simple diagnostic tests.  For example, try
>
>  ssh server printenv PATH
>
> to tell you the path that svn will see when it connects, and
>
>  ssh server which svnserve
>
> to tell you where the svnserve command is located on the server  
> (assuming it's findable).  In these cases "server" should be the  
> path to the server that you're testing.
>
> Duncan Murdoch
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: svn+ssh continues to confuse on Mac OS X

Posted by Duncan Murdoch <mu...@stats.uwo.ca>.
On 4/8/2006 2:35 AM, Bradley Wagner wrote:
 > I can say I no longer have any idea what causes svn+ssh to work
 > sometimes and not work others. I had installed subversion 1.3.1
 > binaries from Metissian on a Mac OS X machine at work. I was not able
 > to connect through ssh with the notorious "svnserve: command no found
 > error" which I read about in the FAQ. However, I installed the same
 > binaries on another Mac OS X and had no problems at all connecting
 > over svn+ssh with no configuration needed.
 >
 > Stranger still, I removed all references to /usr/local/bin/ from my
 > path on this second machine in the /etc/profile and /etc/bashrc and
 > my account .bash_profile. I verified that this was true because when
 > logged into the computer via ssh, I had to qualify all the svn
 > commands with their full path. However, even then, when the svn
 > commands were nowhere to be found in the path, I could still connect
 > to this machine with svn+ssh with no message about svnserve not
 > found. Frankly, at this point, I don't know how the command could
 > have been found at all.
 >
 > NOTE: i'm not using the public key method to connect over ssh so
 > there's no chance it was determining the path from the "command"
 > specified in the public key.
 >
 > Any clues folks?

Sounds like a difference in the sshd configuration, assuming you're 
doing both connection attempts from the same client (so it's not a 
client config problem).  What I'd suggest is that you do some simple 
diagnostic tests.  For example, try

  ssh server printenv PATH

to tell you the path that svn will see when it connects, and

  ssh server which svnserve

to tell you where the svnserve command is located on the server 
(assuming it's findable).  In these cases "server" should be the path to 
the server that you're testing.

Duncan Murdoch


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org