我有这样的用户 - dev
和ssh配置:
Host *
IdentityFile ~/.ssh/id_rsa
如果我以此开发用户身份登录(sudo su dev)并尝试克隆,一切正常。克隆使用没有密码短语。
但是当我使用这样的命令时:
sudo -u dev git clone repositoryurlhere
我总是看到:
Enter passphrase for key '/home/dev/.ssh/id_rsa'
如何摆脱这个?
答案 0 :(得分:2)
文件/home/dev/.ssh/id_rsa
已加密。当你还在dev
时,你可能不得不输入几分钟激情的密码,但是忘记了。输入密码后,您的钥匙串通常会记住几分钟(类似于sudo
,您需要每隔几分钟输入一次密码)。
当您切换到另一个用户然后使用sudo -u dev
时,记住的密码已经消失,您必须重新输入密码。
唯一的解决方案是使用
从身份文件中删除密码ssh-keygen -p -N "" -f /home/dev/.ssh/id_rsa
之后您不必输入密码,既不是dev
也不是sudo -u dev
。