问题描述:
- 在下载特定模型(sd3、flux等)时,需要链接 Linux 服务器与 huggingface 来进行验证
- 具体的 ssh 连接方式在:https://huggingface.co/docs/hub/en/security-git-ssh
- 其中生成好 ssh 的 public key 之后,发现无法被 add
具体报错如下:
(env) user@xxx:/path/to/download_models# ssh-add ~/.ssh/id_ed25519
Could not open a connection to your authentication agent.
解决方案:
- 定位问题:当尝试使用 ssh-add ~/.ssh/id_ed25519 命令时,出现了 “Could not open a connection to your authentication agent.” 的错误,这表明 SSH 代理没有运行或者 SSH 客户端没有正确连接到 SSH 代理。
- 对应方案:
- 确保 SSH 代理正在运行。如果使用的是 ssh-agent,可以通过 eval “$(ssh-agent -s)” 启动它。
- 通过命令
eval "$(ssh-agent -s)"
和echo $SSH_AUTH_SOCK
来确认 ssh agent 已经启动。
(env) user@xxx:/path/to/download_models# eval "$(ssh-agent -s)"
Agent pid 28xxx13
(env) user@xxx:/path/to/download_models# echo $SSH_AUTH_SOCK
/tmp/ssh-eh6QgsQLd13u/agent.28xxx12
验证是否成功解决问题
- ssh agent 启动后,再次执行
ssh-add ~/.ssh/id_ed25519
,得到如下结果,说明 ssh key 被正常 add
(env) user@xxx:/path/to/download_models# ssh-add ~/.ssh/id_ed25519
Identity added: /root/.ssh/id_ed25519 (xxx@xmail.com)
-
此外,还可以使用
cat ~/.ssh/config
来查看是否有IdentityFile
这一行,如果没有也需要启动 ssh agent。 -
成功 add 后可以通过
ssh -T git@hf.co
命令来测试是否接通 huggingface,如果类似下面输出了你的 huggingface 用户名,就可以开始正常下载啦🎉
(env) user@xxx:/path/to/download_models# ssh -T git@hf.co
Hi UserName, welcome to Hugging Face.
如果是 anonymous
说明还可能存在其他问题😭
(env) user@xxx:/path/to/download_models# ssh -T git@hf.co
Hi anonymous, welcome to Hugging Face.