git新增公鑰後報錯sign_and_send_pubkey: signing failed: agent refused operation
阿新 • • 發佈:2018-11-28
在伺服器新增完公鑰後報錯
sign_and_send_pubkey: signing failed: agent refused operation
解決方案:
eval
"$(ssh-agent -s)"
ssh-add
補充:
linux shell中的eval 語法:eval cmdLine eval會對後面的cmdLine進行兩遍掃描,如果第一遍掃描後,cmdLine是個普通命令,則執行此命令;如果cmdLine中含有變數的間接引用,則保證間接引用的語義。 舉例如下: set 11 22 33 44 如果要輸出最近一個引數,即44,可以使用如下命令, echo $4 但是如果我們不知道有幾個引數的時候,要輸出最後一個引數,大家可能會想到使用$#來輸出最後一個引數, 如果使用命令: echo "\$$#" 則得到的結果是 $4,而不是我們想要的44。這裡涉及到一個變數間接引用的問題,我們的本意是輸出 $4,預設情況下,命令後忽略變數間接引用的情況。 這時候,就可以使用eval命令。 eval echo "\$$#" 得到的結果為44
ssh-add 命令詳細介紹 語法 ssh-add [-cDdLlXx] [-t life] [file ...] ssh-add -s pkcs11 ssh-add -e pkcs11 引數說明 -D :刪除ssh-agent中的所有金鑰; -d :從ssh-agent中的刪除金鑰; -e : pkcs11 :刪除 PKCS#11 共享庫 pkcs1 提供的鑰匙; -s : pkcs11 :新增 PKCS#11 共享庫 pkcs1 提供的鑰匙; -L :顯示 ssh-agent 中的公鑰; -l :顯示 ssh-agent 中的金鑰; -t : life:對載入的金鑰設定超時時間,超時 ssh-agent 將自動解除安裝金鑰; -X :對 ssh-agent 進行解鎖; -x :對 ssh-agent 進行加鎖; 示例 把專用金鑰新增到 ssh-agent 的快取記憶體中 ssh-add /home/chen/.ssh/id_rsa 從ssh-agent中刪除金鑰 ssh-add -d /home/chen/.ssh/id_rsa.pub 檢視ssh-agent中的金鑰 ssh-add -l