寻找简单的scp脚本。 SSH密钥已经设置

我有一个远程服务器和本地服务器。 我正在尝试自动将远程服务器上的夜间备份传输到本地服务器上。 SSH密钥是安装的,所以不需要密码。

使用下面的命令,它手动工作:

scp -r -P {REMOTEPORT} user@serveripaddress:/home/remoteuser/directory /home/localuser/directory

我想设置一个cronjob,以便前面的操作运行,但是我是新编写实际的脚本。 有没有一个简单的脚本,会使这发生?

你可以写一个简单的脚本,比如说backup.sh

 #!/bin/bash /usr/bin/scp -r -P {REMOTEPORT} user@serveripaddress:/home/remoteuser/directory /home/localuser/directory 

使用chmod +x backup.sh来执行它

然后,编辑crontab( crontab -e )并设置它:

 0 0 * * * /path/to/backup.sh > /var/log/backup.log 2>&1 

另外,你可以直接从cron( crontab -e )运行它:

 0 0 * * * /usr/bin/scp -r -P {REMOTEPORT} user@serveripaddress:/home/remoteuser/directory /home/localuser/directory > /var/log/backup.log 2>&1 

ps:如果遇到麻烦,当然我们可以帮忙,但我强烈build议阅读这个debugging: 为什么我的crontab不工作,我该如何排除故障?