rsync同步脚本示例:高效自动备份与排除规则
需积分: 5 69 浏览量
更新于2024-08-03
收藏 2KB TXT 举报
该脚本是一份精心编写的rsync同步脚本,用于高效地在Linux服务器之间进行文件同步和管理。它主要关注以下几个关键知识点:
1. **包管理器安装**:
- 使用`yum install epel-release`来安装额外的软件包仓库,以便获取更多的软件包选项。
- 安装`screen`和`openssh-clients`,确保有基本的终端管理和SSH客户端工具。
2. **SSH密钥管理**:
- `sudo ssh-keygen`用于生成SSH密钥对,这是为了实现无密码登录,提高安全性。
- `sudo ssh-copy-id`命令将本地的公钥复制到远程服务器,允许用户验证无密码登录。
3. **rsync脚本编写**:
- 脚本(`/opt/shell/rsync.sh`)采用nohup和rsync命令结合,通过`--avzPpu`参数实现增量同步、压缩、保留权限、更新时间戳、删除旧版本和排除特定文件。其中,`/bin/ssh-p22`指定了使用的SSH连接方式(可能是一种安全配置)。
- `crontab`定时任务被用来定期执行此脚本,通过`crontab -l > crontab-wml.txt`备份当前的cron表,然后编辑以添加或修改rsync任务,最后保存。
4. **文件排除规则**:
- `excluded`文件列出了一系列文件和目录名模式,如日志文件、数据库备份、临时文件等,以防止不必要的同步。
5. **实际同步操作**:
- 脚本中有多条`rsync`命令,分别用于同步不同的源目录到远程服务器的不同目标路径,如/home/support、/opt/server、/app和本地配置文件夹。
6. **权限设置**:
- `chmod +x /opt/shell/rsync.sh`确保脚本具有执行权限,方便运行。
7. **自动化部署**:
- 使用`sudo`命令行,整个脚本实现了自动化部署,减少了手动操作的复杂性。
这个脚本展示了如何使用rsync进行高效、可靠的文件同步,并且结合了SSH密钥管理和cron定时任务,使得数据的持续备份和维护变得更加便捷。同时,通过排除规则,确保了同步操作的精确性和安全性。
2021-06-12 上传
2014-12-10 上传
2021-04-10 上传
2020-09-15 上传
2021-05-30 上传
2021-02-28 上传
2021-06-19 上传
点击了解资源详情
点击了解资源详情
IT灵魂摆渡者
- 粉丝: 54
- 资源: 27
最新资源
- MATLAB实现小波阈值去噪:Visushrink硬软算法对比
- 易语言实现画板图像缩放功能教程
- 大模型推荐系统: 优化算法与模型压缩技术
- Stancy: 静态文件驱动的简单RESTful API与前端框架集成
- 掌握Java全文搜索:深入Apache Lucene开源系统
- 19计应19田超的Python7-1试题整理
- 易语言实现多线程网络时间同步源码解析
- 人工智能大模型学习与实践指南
- 掌握Markdown:从基础到高级技巧解析
- JS-PizzaStore: JS应用程序模拟披萨递送服务
- CAMV开源XML编辑器:编辑、验证、设计及架构工具集
- 医学免疫学情景化自动生成考题系统
- 易语言实现多语言界面编程教程
- MATLAB实现16种回归算法在数据挖掘中的应用
- ***内容构建指南:深入HTML与LaTeX
- Python实现维基百科“历史上的今天”数据抓取教程