定期同步 Rsync使用基础方法
之前有短时间我一直想着利用ubuntu本身的压缩和ssh传递来进行备份,优点是就只需要编辑一下脚本,不需要任何软件,在全县比较少的主机上可以使用,缺点也比较明显, 每次需要进行压缩,所有的文件并对文件进行存储,然后再进行传输,速度非常慢,而且需要占用大量磁盘空间,时间久了还需要按需删除过旧的压缩包。来保证存储空间。所以此次我看到有老师说使用rsync使用增量的模式来进行备份。
安装rsync
1 | apt install rsync |
centos或别的系统类似安装即可。
配置rsync(本地备份移动硬盘)
我这边进行了两步配置,第一个是本地的文件同步到外挂硬盘,第二个是云服务器的数据进行备份到本地服务器的外挂硬盘。
外挂硬盘的地址是:/mnt/jt
我们先进行本地的配置,在home文件下创建一个backup_docker.sh文件:
1 |
|
配置完成后我们对他进行权限修改:
1 | chmod +x backup_docker.sh |
至此文件备份脚本已经编辑完成,比起压缩删除那个脚本看起来相当方便快捷。而且代码也很简洁。
我们需要配置定时任务,在crontab中添加如下内容:
1 | crontab -e |
添加如下内容:
1 | # 每天凌晨的2点30分进行运行这个脚本 |
配置rsync(云服务器备份移动硬盘)
同样我们需要在云服务器上进行配置,首先介绍一下我的环境,
1.云服务器:阿里云ECS,同样在home文件夹下有个docker,存放着所有的容器。
2.移动硬盘:在本地服务器上,并做了挂载:/mnt/jt
第一步我们先在云服务器上配置一个公钥:
1 | ssh-keygen -t rsa -b 4096 |
输入密码,然后输入回车,然后输入回车,这样我们就生成了一个公钥了。
然后我们把这个公钥复制到本地服务器上:
1 | ssh-copy-id -i ~/.ssh/id_rsa.pub -p 22 [email protected] |
如果复制有问题也建议手动复制
1 | # 云服务器上 |
配置完成后,我们回到云服务器上,在home文件夹下创建一个backup_docker.sh文件:
1 |
|
保存退出之后同样给予权限:
1 | chmod +x backup_docker.sh |
配置定时任务,在crontab中添加如下内容,在此之前运行一下脚本,让其第一次备份:
1 | crontab -e |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Get IID 技术支持!
评论








