在 plasma 5 之前,我在登录时解锁了我的 kwallet,并且它运行良好(kwallet 的密码与我的会话的密码相同)。
现在,使用 Plasma 5,它不再起作用了,我想我离解决这个问题已经不远了,但我不知道下一步该怎么做。
这是我的设置,在 ~/.config/plasma-workspace/env/ssh-agent.sh 中:
#!/bin/bash
export SSH_ASKPASS=/usr/bin/ksshaskpass
eval $(ssh-agent)
/usr/bin/ssh-add ~/.ssh/servers ~/.ssh/gitolite
请注意,我使用 ssh-add 加载了 2 个密钥。登录后,我必须解锁我的钱包 2 次,然后桌面才会显示出来。
有人知道出了什么问题吗?
多谢。
答案1
我有一个不再想使用的解决方法,也许它对某些人有帮助。
在 ssh-add 命令周围添加以下 if 语句:
#!/bin/bash
export SSH_ASKPASS=/usr/bin/ksshaskpass
eval $(ssh-agent)
if pstree -s -p $$ | grep Xsession; then
exit
fi
/usr/bin/ssh-add ~/.ssh/servers ~/.ssh/gitolite
解释:当你启动终端时,父进程不是 Xsession,因此会执行 ssh-add 命令。此时 kwallet 已解锁,它不会要求输入 ssh 密钥的密码。