
我想使用 rsync 將檔案從伺服器備份到本機。我只能使用 RSA ssh 金鑰登入伺服器。
我已將金鑰的密碼儲存在 Seahorse 密碼和金鑰中,這意味著我無需每次都輸入密碼即可登入伺服器。我還可以執行與伺服器相關的 rsync 命令,而無需輸入密碼。
當從 cron 作業執行相同的 rsync 命令時,它會失敗,因為它正在尋找 DSA 金鑰(如日誌中所示)而不是 RSA 金鑰。
答案1
當你從 cron 運行某些東西時,它沒有你的環境變量,所以它不知道向 Seahorse 詢問你的密鑰。您需要讓您的腳本檢查它。我自己沒有這樣做過,但我相信解決方法是運行seahorse-agent --variables
然後將它們源到腳本中。