我试图svnserve
通过 SSH 在服务器上提供(Subversion 服务器)时出现了这个问题。我编译了 SVN 并将其安装在$HOME/bin
. 本地访问它(不是通过 SSH)工作正常。
svn+ssh
由于以下原因连接失败:
bash: svnserve: command not found
Run Code Online (Sandbox Code Playgroud)
调试这个,我发现:
ssh user@server "which svnserve"
Run Code Online (Sandbox Code Playgroud)
说:
which: no svnserve in (/usr/bin:/bin)
Run Code Online (Sandbox Code Playgroud)
这就奇怪了,因为我已经更新的路径,$HOME/bin
在我.bashrc
,和还增加了它~/.ssh/environment
。但是,SSH 似乎没有读取它。虽然当我跑步时:
ssh user@server "echo $PATH"
Run Code Online (Sandbox Code Playgroud)
它确实打印了我更新的路径!
这里发生了什么?如何让 SSH 找到我的svnserve
? 提前致谢