18

所以我像往常一样推送我的代码,并且:

git push heroku master
你不存在,走开!
致命:远端意外挂断

有谁知道这应该是什么意思?

4

5 回答 5

16

如果您从 OS X 推送,那么 OS X 可能会进入这种时髦状态,您的用户不知道自己的身份——您可以通过键入“id”命令来确认,您会看到您的用户名丢失,或尝试 sudo 不起作用。

出于某种原因,这似乎解决了它:

dscacheutil -flushcache
于 2013-06-02T15:14:11.857 回答
3

通常是这样的:

The remote end hung up unexpectedly

告诉我们连接问题。但是这个:

You don't exist, go away!

通常意味着SSH客户端无法解析您的用户名(LDAP错误?)所以,我认为这是您这边的问题,但要解决它,应该有更多信息。

于 2012-12-15T07:49:37.390 回答
2

您可能正在运行 nscd。该事物缓存 passwd 条目,以便程序不会浪费时间解析 /etc/passwd、调用 NIS、LDAP 或其他任何东西。

如果事物的数据库损坏(现在不太可能),或者如果它缓存了否定答案(更有可能),它可以从缓存中删除任意用户。“sudo nscd -i passwd”应该可以工作。

如果这不能解决问题,请终止 nscd 以便不再缓存请求。解决问题。然后删除/var/cache/nscd/passwd并重新启动 nscd。

如果 LDAP/NIS/whatever 没有及时回答,并且未回答被误解为“不存在的条目”而不是“服务问题”,就会发生这种情况。

于 2012-12-15T18:11:13.307 回答
0

这通常是由在用户的身份验证凭据更改之前正在运行的进程引起的。(即密码更改)

sshd 可以缓存用户的凭据,这意味着更改前的凭据仍然有效。重新启动使用 ssh 的服务将解决此问题。

于 2014-01-04T11:16:36.480 回答
-1

我今天再次尝试推送到heroku,它自动神奇地工作了。我没有任何变化。

不过,感谢其他所有人的所有想法,我正准备做所有这些事情,但我想在潜入之前试一试,它就奏效了。

我想我们永远不会知道它到底是什么...

于 2012-12-15T21:51:21.783 回答