5

我打字

git push --set-upstream ssh://antyusos@ftp.anty-usos.host-ed.me/projekt.git master

cmd返回:

antyusos@ftp.anty-usos.host-ed.me 的密码:[这里我输入正确的密码]
致命:协议错误:错误的行长字符:Shel

我究竟做错了什么?

4

4 回答 4

3

例如,如果您使用 Godaddy 托管,则可能会发生此错误,因为您的 SSH 访问已禁用

所以服务器立即关闭连接,GIT 向我们展示

fatal: protocol error: bad line length character: Shel.

这意味着我认为外壳访问被拒绝/关闭/等。

转到您的 cPanel 并启用它。cPanel -> Settings -> SSH Access.

即使您之前已经启用它也可能发生这种情况。他们会定期将其关闭。

如果它已经启用,只需禁用并重新启用它。

于 2015-12-26T14:50:15.053 回答
2

当我尝试访问 Apache 用户目录中的存储库时出现此错误。[在我的服务器(CentOS 6.4)中,用户是通过 CPanel 组件创建的。]

此错误可能意味着您使用的用户没有 shell 访问权限,只有 web 和 FTP 或其他协议。

如果您可以访问您的 Web 服务器,我将告诉您如何解决它,但请确保您是否无法通过添加新用户来解决它,因为 apache 用户是执行网页的用户,使用它们进行 shell 访问可能造成安全问题。

passwd在您的编辑器中打开:

vim /etc/passwd

找到包含用户配置的行并检查最后一个路径。它应该是这样的:

antyusos:x:306:307:/home/antyusos:/usr/local/cpanel/bin/noshell

这里重要的是最后一条路径,“/usr/local/cpanel/bin/noshell”。将此行更改为:

antyusos:x:306:307:/home/antyusos:/bin/bash

保存并退出编辑器。

希望它应该工作。至少它对我有用。但正如我所说,我发现它很危险,并且是最后的选择。

祝你好运。

于 2013-09-25T11:34:24.703 回答
0

该线程所示,请确保:

  • 还没有活动的 ssh 会话
  • 用户帐户的.bashrcor没有回.profileantyusos某些消息,然后您的服务器上的 git 会错误地解释这些消息。
于 2013-05-21T05:58:06.877 回答
0

致命:协议错误:错误的行长度字符:Shel

我使用的是godaddy帐户,而Shel是ssh连接错误消息的开头:

没有为此帐户启用Shell 。

我打开了一个客户服务窗口,关闭了外壳然后重新打开,现在它又可以工作了。

于 2019-01-24T17:47:59.713 回答