Git不停提示我输入SSH密钥的密码 - Ubuntu虚拟机

3

我在Bitbucket上有一个测试站点的代码库

SSH

git@bitbucket.org:rkim/rkim-app.git

我的当前git配置文件

cat .git/config

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    url = git@bitbucket.org:rkim/rkim-app.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master
[credential]
    helper = store

git config --list

user.name=Ryan Kim
user.email=rkim@outlook.com
credential.helper=cache --timeout=3600
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=git@bitbucket.org:rkim/rkim-app.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
credential.helper=store

我尝试了这里的所有建议,但仍然提示我输入我的passphrase。

git pull

输入密钥'/root/.ssh/id_rsa'的passphrase:

如果还需要其他信息,请告诉我。

有人能否结束这个问题?

我还需要查看其他内容吗?

我需要重新启动SSH服务或VM吗?

1个回答

12

Git一直提示我输入密码

Enter passphrase for key '/root/.ssh/id_rsa': 

不,这不是密码,而是口令。你是怎么创建那个密钥的?你想达到什么目的?

我想不用一直输入口令。- ihue 30秒前

那你有两种可能性。从ssh密钥中删除口令,你就再也不必输入口令了:

ssh-keygen -p -P old_passphrase -N "" -f ~/.ssh/id_rsa

或者将口令暂时缓存到某个地方。为此,可以使用ssh-agent来启动。

eval `ssh-agent`

然后您可以添加密钥:

ssh-add ~/.ssh/id_rsa

您将在首次输入密码后受到提示,此后在本次会话期间不再需要再次输入。


我正在尝试避免每次输入密码短语。 - code-8
@ihue,为什么这个问题没有在问题中进行说明呢?这不像是您的第一个问题。请查看更新。 - Jakuje
这对我不起作用。即使我对文件拥有完全控制权,我仍然会收到“保存密钥"id_rsa"失败:权限被拒绝”的消息。 - bikeman868
ssh-keygen -p -P old_passphrase -N "" -f ~/.ssh/id_rsa 对我来说只有在我将 id_rsa 复制到一个临时文件中,清除了该临时文件上的密码,然后删除原始文件并将临时文件重命名为 id_rsa 后才起作用。现在对我来说可以使用了。 - bikeman868

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接