【问题标题】:Can't push to github in ssh terminal session (Ubuntu ssh-agent over ssh)无法在 ssh 终端会话中推送到 github(Ubuntu ssh-agent over ssh)
【发布时间】:2013-08-22 16:40:37
【问题描述】:

有时我忘记在我家的电脑上推送一些东西到 github,所以我快速使用 SSH 登录它然后推送它。但我总是得到这个错误:

$ git push
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我打开了 X11 转发,但就是这样!为什么当我在家时它可以正常工作时它会抱怨公钥?

github 仓库是这个: git@github.com:skerit/alchemy.git

它也只能与 github 一起使用。其他私有存储库也可以正常工作。

我现在的解决方法是创建一个 vnc 会话并像这样推送它,但这很烦人。

编辑1:

Ubuntu 的 ssh-agent 似乎以某种方式绑定到 Unity 会话,并且任何没有从那里产生的进程都无法访问它。这很烦人。

 3123 ?        Ss     0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch gnome-session --session=ubuntu

编辑2:

我找到了一种使用现有 ssh-agent 的方法,虽然它确实加载了现有密钥,但它仍然不起作用。

https://superuser.com/questions/141044/sharing-the-same-ssh-agent-among-multiple-login-sessions

【问题讨论】:

    标签: git ubuntu github ssh ssh-agent


    【解决方案1】:

    如果您的“不在家”机器有您的 SSH 密钥和正在运行的代理,您可以在连接到您的家用机器时使用代理转发。尝试使用 ssh 选项 -A 或将 ForwardAgent 设置为 Yes。有关详细信息,请参阅 man sshman ssh_config

    【讨论】:

      猜你喜欢
      • 2021-05-28
      • 2015-05-07
      • 1970-01-01
      • 2016-11-16
      • 2021-02-02
      • 1970-01-01
      • 2013-01-23
      • 2014-05-14
      相关资源
      最近更新 更多