首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Git生成SSH密鑰報錯Too many arguments?參數大小寫搞錯了

     編輯:程式設計綜合問答

錯誤命令

$ ssh-keygen -t rsa -c "xxxxx@163.com"
Too many arguments.

原因分析

Git Bash (基於 Linux 環境)**嚴格區分大小寫** :

  • `-C` (大寫):**註釋參數**,用於指定密鑰備註(通常填郵箱)。
  • `-c` (小寫):**無效參數** / 在某些版本中被識別為其他含義,導致參數解析錯誤,提示 "Too many arguments"。

正確命令

ssh-keygen -t rsa -C "your_email@example.com"
# -t rsa      指定加密類型為 RSA
# -C "..."    大寫 C,添加註釋
# 回車三次 (文件路徑、密碼、確認密碼) 即可生成 ~/.ssh/id_rsa 和 id_rsa.pub

生成後必做:添加到 SSH Agent 並上傳公鑰


# 1. 啟動 ssh-agent 並添加私鑰
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

# 2. 複製公鑰內容
cat ~/.ssh/id_rsa.pub
# 輸出類似:ssh-rsa AAAAB3NzaC1yc2E... your_email@example.com

# 3. 粘貼到 GitHub/GitLab/Gitee 等平台的 SSH Keys 設置頁

常見避坑

  • **路徑含空格/中文**:建議使用默認路徑 `~/.ssh/`,避免後續 `ssh-add` 失敗。
  • **多密鑰管理**:不同平台用不同密鑰時,配置 `~/.ssh/config` 指定 `IdentityFile`。
  • **權限問題**:私鑰文件權限必須 `600` (`chmod 600 ~/.ssh/id_rsa`),否則 `ssh` 會拒絕使用。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved