在Mac OS Catalina上通过cron运行rsync

时间:2020-04-06 10:55:59

标签: cron rsync macos-catalina

网络上有很多与此相关的帖子,但是我没有找到解决该问题的有效方法。

我在Mac OS Catalina上。我已经编写了一个脚本,通过ssh将远程目录rsync同步到本地计算机:

#!/bin/bash
/usr/bin/rsync -arvzhe --delete 'ssh -i /Users/myusername/.ssh/id_rsa' user@XX.XXX.XX.XX:/home/storage/app/public /Users/myusername/public/

但失败并显示以下错误:

权限被拒绝(公钥)。 rsync:连接意外关闭(到目前为止已接收0字节)[接收器] rsync错误:/AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-54/rsync/io.c(453)中的rsync协议数据流(代码12)中的错误(接收器= 2.6。 9]

从终端手动调用时,rsync调用可以正常工作。

我在/Users/myusername/.ssh/id_rsa中有一个私钥文件

谢谢。

1 个答案:

答案 0 :(得分:0)

您必须授予终端应用程序完整的磁盘访问权限。 (这样做之后,它仍然必须服从Unix级别的权限,但是现在您正进入Mac OS已添加的另一层安全保护。)

要解决此问题,请转到:系统偏好设置=>安全和隐私=>隐私,选择“全盘访问”并选中右侧的“终端”框。