异地自动备份INSTALL文件夹

1、备份shell脚本:backup.sh

#!/bin/bash

BAKDATE='date +%y%m%d'

cd /home/atc/zzzz/dpr

tar -xvzf  /home/atc /backup/INSTALL_$BAKDATE.tat.gz INSTALL

rsync -vzrtopg   /home/atc/ backup/INSTALL_$BAKDATE.tat.gz root@168.192.13.51:/home/atc/ backup

脚本中不要采用相对路径,全部改为绝对路径

#chmod 755 backup.sh

2、crontab定时任务,每天凌晨03:30自动执行备份(备份SYSDATA每天一次,备份INSTALL每月一次)

#crontab -e

    30 03 * * * /home/atc/backup.sh

设置crond开机自启动:chkconfig --level 35 crond on

如更改后不起效果,重新加载或重启cron:
方法1:   /etc/init.d/cron reload 

方法2:  /etc/init.d/cron restart

定时任务的应用:

我们不可能一直手动去同步时间,因此需要将同步时间命令添加到定时任务中去:每5分钟同步一次

echo  '*/5 * * * * /usr/sbin/ntpdate 192.168.1.111&&hw clock -w >/dev/null 2>&1'  >>/ var /spool/cron/root

3、自动执行需设置无密码登录

把DPR主机的公钥传到DARD主机

#scp /root/.ssh/id_rsa.pub  root@168.192.13.51:/root/.ssh/

登录DARD主机

#cat  /root/.ssh/ id_rsa.pub >/root/.ssh/authorized_keys

4、 rsync的目的是实现本地主机和远程主机上的文件同步(包括本地推到远程,远程拉到本地两种同步方式),也可以实现本地不同路径下文件的同步,但不能实现远程路径1到远程路径2之间的同步(scp可以实现)。 无论本地同步目录还是远程同步数据,首次运行时将会把全部文件拷贝一次,以后再运行时将只拷贝有 变化的文件(对于新文件)或文件的变化部分(对于原有文件)

rsync -vzrtopg  SRC DEST

rsync 常用参数的具体解释如下:

-v, --verbose 详细模式输出
-q, --quiet 精简输出模式
-c, --checksum 打开校验开关,强制对文件传输进行校验
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, --recursive 对子目录以递归模式处理
-b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。
-suffix=SUFFIX 定义备份文件前缀
-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
-l, --links 保留软链结
-p, --perms 保持文件权限
-o, --owner 保持文件属主信息
-g, --group 保持文件属组信息
-t, --times 保持文件时间信息
-e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步
--delete 删除那些DST中SRC没有的文件
--delete-excluded 同样删除接收端那些被该选项指定排除的文件
--delete-after 传输结束以后再删除
--ignore-errors 及时出现IO错误也进行删除
--force 强制删除目录,即使不为空
--timeout=TIME IP超时时间,单位为秒
--progress 显示备份过程
-z, --compress 对备份的文件在传输时进行压缩处理
--exclude=PATTERN 指定排除不需要传输的文件模式
--include=PATTERN 指定不排除而需要传输的文件模式
--exclude-from=FILE 排除FILE中指定模式的文件
--include-from=FILE 不排除FILE指定模式匹配的文件

请使用浏览器的分享功能分享到微信等