首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到svnserve命令

找不到svnserve命令
EN

Ask Ubuntu用户
提问于 2021-04-10 02:41:19
回答 2查看 596关注 0票数 0

我让我的svn设置工作了多年,现在它突然决定不工作了。我正在使用svn+ssh。我可以直接把ssh放到服务器上,然后我可以运行type svnserve,这给了我svnserve is /usr/local/bin/svnserve,我也可以在客户机上这样做,如:

代码语言:javascript
复制
ssh -p 1234 user@myserver "sh -l -c 'type svnserve'" 

得到和上面一样的回应。但是当我跑的时候

代码语言:javascript
复制
svn list -v svn+ssh://user@myserver/my_repo

在SSH身份验证成功之后,它给了我sh: svnserve: command not found。我可以列出回购罚款,如果我直接在服务器上没有ssh。有人能帮忙吗?谢谢

附注:我是唯一使用此svn服务器的用户。

EN

回答 2

Ask Ubuntu用户

发布于 2021-04-19 13:30:54

在我们的例子中,它已经足够运行

代码语言:javascript
复制
ln -s /var/packages/SVN/target/bin/svnserve /usr/bin/svnserve

在语法上。

票数 0
EN

Ask Ubuntu用户

发布于 2021-04-19 13:34:14

谢谢你这么做!<3这挽救了我们公司的SVN!:)

看起来,最近DSM和SVN更新的结合,一定是把一些事情搞砸了。通过终端跟踪SSH和SVN错误消息,罪魁祸首似乎是启动SH进程的机器用户找不到的svnserve二进制文件,然后该进程试图运行svnserve。

但是,对于这个问题,有一个更简单的解决方案(当然也是野蛮的),而不需要任何包装器、脚本或BASH配置文件:只需创建一个全局可用的SymLink,以确定svnserve二进制文件在其语法数据包路径中的实际位置。

Synology数据包中的svnserve位于这里: /var/packages/ SVN /target/bin/svnserve

我最终所要做的就是在/usr/bin/文件夹中为该文件创建一个SymLink,现在一切都按预期工作了。

所以通过SSH登录,然后

代码语言:javascript
复制
cd /usr/bin
ln -s /var/packages/SVN/target/bin/svnserve svnserve

这应该能起作用。“在这里工作”:)

如果没有您的指示,我们可能仍然处于恐慌和寻找解决办法,所以再次感谢您找到了这一个!

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1330448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档