今天,我花了很长时间尝试使ssh密钥在登录时自动解锁。我正在使用kwallet,kwallet-pam和ksshaskpass。我已经制作了这个脚本,该脚本在启动时运行,并且已经验证它确实可以运行,因为登录时我的log.txt中有一个新行。但是,如果我从Konsole使用命令ssh-add -l
,它说它无法连接到代理,该代理应该已使用启动脚本进行了初始化?
#!/bin/zsh
eval $(ssh-agent) </dev/null
SSH_ASKPASS=ksshaskpass ssh-add </dev/null
now=$(date +"%T")
echo "Ran script at: $now \n" >> ~/log.txt
因此,每次登录时我仍然必须输入密码,但是很奇怪的是,如果我在登录后从终端手动运行脚本,那么效果很好。
我很吃惊,我完全不知道为什么这行不通。有人经历过同样的事情吗?
预先感谢
/ VE