我有一个 python 脚本,它执行 scp 操作以将文件从一台 Synology DiskStation(运行 Linux)传输到本地网络上的几台 Mac OSX 计算机。我已经在所有涉及的机器上设置了 RSA 私钥/公钥对。如果我以管理员用户身份从 NAS 驱动器调用此 python 脚本,那么一切都按预期工作。我的 NAS 驱动器 crontab 文件指定相同的管理员用户以完全相同的方式运行脚本。但是,scp 失败,退出状态代码为 1。
什么可能导致这种行为?
[更新]
使用 scp -v(或 scp -vv)报告更多信息。我还可以看到它提供了正确的密钥,并且身份验证按预期工作。现在我还注意到它在一些 OSX 机器上工作,但不是全部。