1、首先在root目录下建个backup.sh
#!/bin/bash
# 创建备份
tar -czvf /home/backup_$(date +\%Y\%m\%d).tar.gz /需要备份的文件夹1 /需要备份的文件夹2
# 传输备份到远程服务器
sshpass -p '????' scp /home/backup_$(date +\%Y\%m\%d).tar.gz 用户名@远端服务器域名或ip:/home/backups/xxx #远端服务器要有xxx这个目录,????是登录密码
# 删除之前的备份(保留最近2天的备份)
sshpass -p '????' find /home/backups/xxx -name "backup_*.tar.gz" -mtime +2 -exec rm {} \; #删除近两天以上的备份
# 删除本地备份
rm /home/backup_$(date +%Y%m%d).tar.gz
2、一般要安装sshpass
apt-get install sshpass
3、定时
可以使用cron来定时运行某个脚本
crontab -e
添加一行
0 */24 * * * /root/backup.sh
意思是每个24小时运行一次backup.sh脚本,也可以定时
45 13 * * * /root/backup.sh
意思是13:45运行脚本
注意:第一次要登录下远端服务器
ssh root@远端服务器
会跳出选择登录,输入yes,以后就不需要了
留言