【发布时间】:2015-05-06 01:15:54
【问题描述】:
我在 CentOS 7 上并试图推送到 github。首先我使用的是 ssh,但我的系统似乎有一些奇怪的错误,我的 ssh 密钥不断消失(我知道这令人难以置信,但我没有其他解释。)相反,我一直在尝试使用 https,但我无法推送到github,不知道为什么。以下是发生的事情:
$ git push origin remote
fatal: could not read Username for 'https://github.com': Permission denied
你能帮忙吗?
【问题讨论】:
-
好的,人类不知道 SSH 密钥会消失的错误。这些是常规的,只有所有者可读的文件 ~/.ssh,所以要弄清楚这些文件发生了什么。该文件夹中的所有文件都真正归您的用户所有吗?
ls -lh ~/.ssh可能会有所帮助。我的猜测是,既然你看到在你的主文件夹最私密的部分发生了虚假的事情,你真的应该先解决这个问题,然后再继续修复 git 用户名存储的权限。您是否以 root 身份执行 SSH 或 git 操作,而您不应该这样做?! -
这并不是一个真正的错误——我对 linux 比较陌生,我不太确定哪些文件在重新启动后仍然存在,哪些文件不存在。我还与其他用户共享系统,也许其中一个用户覆盖了我的 .ssh 目录意外。我绝对不知道发生了什么,但我认为在这种情况下 https 可能比 ssh 更容易。
-
如果您没有使用与其他人相同的用户名(从不这样做),那么他们将无法在您的任何文件上写入;事实上,他们将无法读取您的 ~/.ssh 目录。
-
嗯...他们有 root 访问权限。这只是一个班级项目。
-
世界上谁拥有 root 权限会弄乱你的 .ssh 文件夹?那里有很多邪恶。
标签: linux git github ssh centos