![Duplicity SSH 仅在由 Cron 运行时出现错误](https://linux22.com/image/1176626/Duplicity%20SSH%20%E4%BB%85%E5%9C%A8%E7%94%B1%20Cron%20%E8%BF%90%E8%A1%8C%E6%97%B6%E5%87%BA%E7%8E%B0%E9%94%99%E8%AF%AF.png)
我的 Ubuntu 桌面上运行着 Duplicity。如果我从命令行运行它,它会正常运行,但是,当我使用 Cron 安排它时,我收到此错误:
backendException:与 userid@server:22 的 ssh 连接失败:不是有效的 RSA 私钥文件(实际的用户 ID 和服务器名称已被删除)
通过 Cron 运行一个简单的 SCP 命令将文件从我的桌面复制到备份服务器运行正常,所以我不认为 SSH 是问题所在。
有什么修复建议吗?
答案1
我遇到了同样的问题,并发现SSH_AUTH_SOCK
环境变量是罪魁祸首。与常规 Ubuntu 环境相比,cron 为进程设置的变量有限。
所以我必须复制它的值并将命令放入 cronfile 中:
/usr/bin/env SSH_AUTH_SOCK=/path/to/socket duplicity ...
使其工作。