eoi*_*noc 18 ssh git gnome-keyring ssh-agent
我正在使用 Linux Mint,并且似乎无法在登录时自动解锁 gnome-keyring。
我的问题的一个症状如下:
$ ssh-add
Identity added: /home/me/.ssh/id_rsa (/home/me/.ssh/id_rsa)
$ git pull
WARNING: gnome-keyring:: couldn't connect to: /tmp/keyring-Nmf3J3/pkcs11: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我怎样才能让 git 可以在没有我输入任何密码的情况下推/拉?
我意识到 gnome-keyring 和 ssh-agent 有几件事情,但一直无法确定。
ssh-add
在会话期间运行意味着不再要求我提供 SSH/git 的密码。
问题是我需要ssh-add
在每个会话期间运行- 我一定错过了如何在登录时解锁 Gnome 的钥匙圈。
$ export | grep GNOME
GNOME_KEYRING_CONTROL=/tmp/keyring-hjMM4V
GNOME_KEYRING_PID=1961
Run Code Online (Sandbox Code Playgroud)
它在与第一次编辑相同的会话期间再次发生。我做了git pull
并得到了WARNING: gnome-keyring:: couldn't connect to: /tmp/keyring-hjMM4V/pkcs11: No such file or directory
。
$ env | grep SSH
SSH_AGENT_PID=2116
SSH_AUTH_SOCK=/tmp/ssh-OACxJMBY2038/agent.2038
$ ps -fp $SSH_AGENT_PID
UID PID PPID C STIME TTY TIME CMD
eoin 2116 2038 0 09:47 ? 00:00:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session x-session-manager
Run Code Online (Sandbox Code Playgroud)
应该发生的是:
您启动一个 gnome 会话,其中一部分 gnome-keyring 守护进程(也充当 ssh 代理)启动,并且在该 gnome 会话期间启动的任何内容的环境都会更新有关如何联系该 ssh 代理的信息。您以图形方式登录时发出的密码用于解锁默认密钥环。
当您使用 gnome-keyring 作为 ssh 代理时,您不想使用其他代理,例如ssh-agent
.
当您的 X 会话终止时,gnome-keyring 也会终止。但你的 tmux 会话仍然存在。然后,即使您启动另一个 gnome-keyring 或 ssh-agent,已经启动的进程的环境也将tmux
无法与其通信,除非您使用新套接字的路径更新它们的环境。
你可以做的是:
gnome-keyring-daemon -r > ~/.gkr
Run Code Online (Sandbox Code Playgroud)
并. ~/.gkr
在您想要使用新的 gnome-keyring 的所有 shell 中执行此操作
请注意 gnome-keyring-daemon 将连接到哪个 DISPLAY。
归档时间: |
|
查看次数: |
19004 次 |
最近记录: |