linux – ssh连接 *** 作使用rsync超时

linux – ssh连接 *** 作使用rsync超时,第1张

概述我使用rsync备份我的本地设备上的远程服务器但是当我将它与cron作业结合时,我的ssh超时.为了清楚起见,数据存储在远程服务器上,我希望它存储在我的本地服务器上.必须将备份请求从本地服务器发送到远程服务器. 当我在终端中输入数据时,备份数据的命令正常工作: rsync -chavzP --stats USERNAME@IPADDRES: PATH_TO_BACKUP LOCAL_PATH_TO 我使用rsync备份我的本地设备上的远程服务器但是当我将它与cron作业结合时,我的ssh超时.为了清楚起见,数据存储在远程服务器上,我希望它存储在我的本地服务器上.必须将备份请求从本地服务器发送到远程服务器.

当我在终端中输入数据时,备份数据的命令正常工作:

rsync -chavzP --stats USERname@IPADDRES: PATH_TO_BACKUP LOCAL_PATH_TO_BACKUP

但是当我将它与这样的cron作业结合起来时:

10 11 * * * rsync -chavzP --stats USERname@IP_ADDRESS: PATH_TO_BACKUP LOCAL_PATH_TO_BACKUP

ssh连接超时.当cronjob执行它时,向root用户发送一封邮件,其输出如下:

From local.xx.xx.xx  Tue Jul  2 11:20:17 2013X-Original-To: usernameDelivered-To: username@username.localFrom: username@username.local (Cron Daemon)To: username@username.localSubject: Cron <username@server> rsync -chavzP --stats USERname@IPADDRES: PATH_TO_BACKUP LOCAL_PATH_TO_BACKUPX-Cron-Env: <SHELL=/bin/sh>X-Cron-Env: <PATH=/usr/bin:/bin>X-Cron-Env: <LOGname=username>  X-Cron-Env: <USER=username>X-Cron-Env: <HOME=/Users/username>Date: Tue,2 Jul 2013 11:20:17 +0200 (CEST)ssh: connect to host IP_ADDRESS port XX: Operation timed outrsync: connection unexpectedly closed (0 bytes received so far) [receiver]rsync error: unexplained error (code 255) at /SourceCache/rsync/rsync-42/rsync/io.c(452)          [receiver=2.6.9]

所以rsync命令在刚刚输入终端时工作,但在cronjob使用时却没有.任何人都能解释一下吗?

@H_403_17@解决方法 当您从cron运行命令时,它无法访问您的环境信息,就像从shell运行它一样.这意味着它找不到您的ssh密钥,或者您用于设置SSH代理的任何环境变量.

如果您使用的是无密码密钥,请将rsync行更改为:

rsync -chavzP -e "ssh -i /Users/username/.ssh/YOUR_PRIVATE_KEY_HERE" --stats USERname@IP_ADDRESS: PATH_TO_BACKUP LOCAL_PATH_TO_BACKUP
总结

以上是内存溢出为你收集整理的linux – ssh连接 *** 作使用rsync超时全部内容,希望文章能够帮你解决linux – ssh连接 *** 作使用rsync超时所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1036077.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存