项目中需要用到 rsync 进行文档同步备份。看了下网上教程弄好了,不过觉得网上教程条理不清晰容易让初学者看得云里雾里,这里写个简明教程让人立马可以上手使用。
-
rsync 简介
:
用于服务器同步目录及文档,功能相当强大上。不过它是把一个文档划分成多个块进行扫描对比,所以可以进行差异同步,效率高速度也快。并且备份文档能保留源文档的权限、属主、属组、时间等属性。
其工作方式分为命令行和服务模式两种。前者就和scp命令接近,后者和samba工作模式相似。
假设服务器为192.168.0.1,其上的文件需要备份。 客户机为192.168.0.3,保存备份文档。两个机器系统皆为CentOS5。
-
命令行模式
:
这种方式采用SSH方式进行工作,传输的口令及文档内容全部是加密数据。远程账号(下例中的mark)是远程服务器实体账户,口令也是此实体账户的系统口
令。
注意都只有一个冒号:
# rsync -avzP mark@192.168.0.1:/var/samba /tmp
注意 samba后面的斜杠
# rsync -avzP mark@192.168.0.1:/var/samba/ /tmp
将会提示你输入口令
第一条命令是把远程01主机 上 /var/samba 这个目录同步到本地 /tmp 目录下;
第二条命令是把远程01主机上 /var/samba 目录下的内容
同步到本地 /tmp 目录下,就是说 /tmp 中不会同步有 samba 这个目录而是直接存放 远程 samba 下的内容。
-
服务模式
:
此模式传输口令是加密信息,但传输的文档内容是非加密的。 和Samba工作模式相似,需要设置服务提供的“模块”——一个模块包含源路径、允许使用账户、权限等信息,在Samba中称为“服务”。比如,
rsync.conf 写道
[sambaFile]
path = /var/samba
list = yes
ignore errors=yes
read only = yes
auth users = admin
secrets file = /etc/rsync/rsync.secrets
comment = samba
#exclude =
[files]
path = /var/upload
list = yes
ignore errors=yes
read only = yes
auth users = mark
secrets file = /etc/rsync/rsync.secrets
comment = upload files
path:需要被备份的目录路径
list: 是否列表显示该模块。 列表命令 rsync --list-only 192.168.0.1::
read only: yes表示客户端无法修改,只能下载(同步)文件
auth users:允许使用此资源(指sambaFile这个小节模块)的用户。用逗号分隔多个用户。此用户必须为系统实 体账户,这一点和Samba是一致的。
secrets file:此文件对应auth users中账户的口令。
secrets file文件格式为:
rsync.secrets 写道
admin:pass-for-admin
mark:pass-for-mark
每个账户一行,以冒号分隔用户名和口令。 出于安全,账户口令一定不要和实体账户的口令一致!
这和samba的要求是相同的。 并且rsync.secrets文件必须是属于root且 600,否则同步时程序会提示出错。需要执行:
# chown root:root /etc/rsync/rsync.secrets
# chmod 600 /etc/rsync/rsync.secrets
在服务端可以xinetd方式启动,也可以stand-alone方式启动
# 直接执行方式
# /usr/bin/rsync --daemon --config=/etc/rsync/rsync.conf '
# 写入启动脚本以便虽系统启动而启动rsync服务,注意随系统不同 rc.local 的路径可能有差异
# echo '/usr/bin/rsync --daemon --config=/etc/rsync/rsync.conf ' >> /etc/rc.local
然后在客户机上执行,
# mkdir /home/backup/rsync
# cd /home/backup/rsync
# touch rsync.pas
# chmod 600 rsync.pas
# echo 'pass-for-admins' > rsync.pas
# 注意:上面一行写入的是你准备同步使用的账户的口令
同步开始,
# /usr/bin/rsync -azh --password-file=/home/backup/sync/rsync.pas \
admins@192.68.0.1::sambaFile /home/backup/sync/samba &
-
快速部署
没时间研究的朋友可以直接下载附件文档,修改下内容即可投入使用 
- rsync.tar.gz 文档解压到服务器 /etc下,编辑 rsync.conf 中“模块”需要备份文档的路径。然后启动服务,命令为
# tar -zxvf rsync.tar.gz -C /etc
# ...do 编辑模块
# /usr/bin/rsync --daemon --config=/etc/rsync/rsync.conf
- rsync.cron.tar.gz 文档解压到客户机 /home/backup/rsync 下,然后开足马力拉文件吧。命令为
# mkdir /home/backup/rsync -p
# tar -xzvf rsync.cron.tar.gz -C /home/backup/rsync
# 开工啦……
# /home/backup/rsync/cron.rsync.sh
如果需要每天凌晨00:30开始自动同步,则需要把脚本加入cron计划任务中
# crontab -e
# 把下面内容追加进去 ,注意没有前面那个 # 号哟
# 30 0 * * * /home/backup/rsync/cron.rsync.sh 1> /dev/null
- 注意事项:
rsync.conf 文件中 hosts allow/hosts deny 未做设置,所以任何机器都可以访问服务器rsync服务,这存在安全隐患。你应该自己修改合适的设置。
uid/gid 都是使用 root 账户而非默认的 nobody,这是为了防止有些文件因为权限限制而在客户机上拉不不过来。
-
相关资料
下面是一些关于rsync的文档资料,适合自己钻研:
http://rsync.samba.org/ftp/rsync/rsyncd.conf.html
http://wfyang.blog.51cto.com/65117/95826
http://www.linuxsir.org/main/?q=node/256
http://www.linuxsir.org/bbs/thread348137.html
需要补充的是上面两个链接中关于防火墙iptables的命令有误,正确的如下
# iptables -A INPUT -p tcp --dport 873 -j ACCEPT
# iptables -nvL 查看一下防火墙是不是打开了 873端口
关于iptables的详细信息可以参考鸟哥的作品:
http://linux.vbird.org/linux_server/0250simple_firewall.php
分享到:
相关推荐
这份“Linux简明教程”旨在帮助初学者快速掌握Linux的基本概念和常用操作,从而能够熟练地在Linux环境下工作。 首先,我们需要理解Linux的核心概念。Linux是一种类Unix操作系统,基于Linux内核,由林纳斯·托瓦兹于...
【Solaris简明教程】 Solaris是由Sun Microsystems开发的一个Unix操作系统,后来被Oracle公司收购。本教程主要关注Solaris的基础知识,适合初学者入门和作为参考手册。我们将深入探讨几个关键领域,包括系统安装、...
【标题】"老王2018Linux运维.zip"是一个包含有关2018年Linux运维实践的压缩文件,很可能是由经验丰富的IT专家“老王”编写的教程或笔记。这个压缩包聚焦于Linux系统的管理和维护,是针对那些希望提升在Linux环境下...
计算机硬件控制_驱动级键盘鼠标同步_PS2接口UDP协议多机协同_基于rabirdwinio和pynput的跨设备输入共享系统_实现多台Windows电脑的键盘鼠标同步操作_支持
嵌入式八股文面试题库资料知识宝典-TCPIP协议栈.zip
少儿编程scratch项目源代码文件案例素材-开膛手杰克.zip
基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型,个人经导师指导并认可通过的高分设计项目,评审分99分,代码完整确保可以运行,小白也可以亲自搞定,主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为毕业设计、课程设计、期末大作业,代码资料完整,下载可用。 基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现遥感图像滑坡识别源码+数据集+训练好的模型基于深度学习CNN网络+pytorch框架实现
内容概要:本文详细探讨了电力弹簧技术在主动配电网规划及运行优化调度中的应用。首先介绍了电力弹簧技术作为智能电网调控手段的优势,如自适应性强、响应速度快、节能环保等。接着阐述了主动配电网规划的目标和策略,包括优化电网结构、提高能源利用效率和降低故障风险。随后讨论了运行优化调度的原则和方法,强调了实时监测、智能调度策略以及优化调度模型的重要性。最后通过实际案例分析展示了电力弹簧技术在提升电网稳定性、可靠性和能效方面的显著效果,展望了其广阔的应用前景。 适合人群:从事电力系统规划、运行管理的研究人员和技术人员,以及对智能电网感兴趣的学者和学生。 使用场景及目标:适用于希望深入了解电力弹簧技术及其在主动配电网规划和运行优化调度中具体应用的专业人士。目标是掌握电力弹簧技术的工作原理、优势及其在实际项目中的实施方法。 其他说明:本文不仅提供了理论分析,还有具体的案例支持,有助于读者全面理解电力弹簧技术的实际应用价值。
嵌入式八股文面试题库资料知识宝典-C语言思维导图.zip
电路教学与科研案例的结合—以最大功率传输定理为例.pdf
内容概要:本文深入介绍了HarmonyOS文件系统及其在万物互联时代的重要性。HarmonyOS自2019年发布以来,逐步覆盖多种智能设备,构建了庞大的鸿蒙生态。文件系统作为其中的“数字管家”,不仅管理存储资源,还实现多设备间的数据协同。文章详细介绍了常见的文件系统类型,如FAT、NTFS、UFS、EXT3和ReiserFS,各自特点和适用场景。特别强调了HarmonyOS的分布式文件系统(hmdfs),它通过分布式软总线技术,打破了设备界限,实现了跨设备文件的无缝访问。此外,文章对比了HarmonyOS与Android、iOS文件系统的差异,突出了其在架构、跨设备能力和安全性方面的优势。最后,从开发者视角讲解了开发工具、关键API及注意事项,并展望了未来的技术发展趋势和对鸿蒙生态的影响。 适合人群:对操作系统底层技术感兴趣的开发者和技术爱好者,尤其是关注物联网和多设备协同的用户。 使用场景及目标:①理解HarmonyOS文件系统的工作原理及其在多设备协同中的作用;②掌握不同文件系统的特性和应用场景;③学习如何利用HarmonyOS文件系统进行应用开发,提升跨设备协同和数据安全。 阅读建议:本文内容详实,涵盖了从基础概念到高级开发技巧的多个层次,建议读者结合自身需求,重点关注感兴趣的部分,并通过实践加深理解。特别是开发者可参考提供的API示例和开发技巧,尝试构建基于HarmonyOS的应用。
嵌入式八股文面试题库资料知识宝典-海康嵌入式笔试题.zip
内容概要:本文详细介绍了基于瞬时无功功率理论的三电平有源电力滤波器(APF)仿真研究。主要内容涵盖并联型APF的工作原理、三相三电平NPC结构、谐波检测方法(ipiq)、双闭环控制策略(电压外环+电流内环PI控制)以及SVPWM矢量调制技术。仿真结果显示,在APF投入前后,电网电流THD从21.9%降至3.77%,显著提高了电能质量。 适用人群:从事电力系统研究、电力电子技术开发的专业人士,尤其是对有源电力滤波器及其仿真感兴趣的工程师和技术人员。 使用场景及目标:适用于需要解决电力系统中谐波污染和无功补偿问题的研究项目。目标是通过仿真验证APF的有效性和可行性,优化电力系统的电能质量。 其他说明:文中提到的仿真模型涉及多个关键模块,如三相交流电压模块、非线性负载、信号采集模块、LC滤波器模块等,这些模块的设计和协同工作对于实现良好的谐波抑制和无功补偿至关重要。
基于环比增长的销售统计分析——2019年中青杯全国数学建模竞赛C题.pdf
嵌入式八股文面试题库资料知识宝典-linux面试题.zip
嵌入式八股文面试题库资料知识宝典-linux常见面试题.zip
内容概要:本文探讨了小电流接地系统在配电网络中的应用,特别是在单相故障情况下的仿真分析。文中介绍了小电流接地系统的背景和发展现状,重点讨论了两种常见的接地方式——中性点不接地和中性点经消弧线圈接地。利用Matlab作为仿真工具,作者构建了详细的电路模型,模拟了单相故障的发生过程,并通过多个结果图表展示了故障电流、电压波形及系统运行状态。此外,文章还包括了详细的设计说明书和PPT介绍,帮助读者全面理解仿真过程和技术细节。 适合人群:从事电力系统研究、维护的技术人员,尤其是关注配电网络安全和稳定的工程师。 使用场景及目标:适用于希望深入了解小电流接地系统的工作原理和故障处理机制的专业人士。通过本研究,读者可以掌握如何使用Matlab进行电力系统仿真,评估不同接地方式的效果,优化配电网络的安全性能。 其他说明:随文附带完整的仿真工程文件、结果图、设计说明书及PPT介绍,便于读者进一步探索和实践。
少儿编程scratch项目源代码文件案例素材-激烈的殴斗.zip
嵌入式八股文面试题库资料知识宝典-小米嵌入式软件工程师笔试题目解析.zip
内容概要:本文详细探讨了车辆主动避撞技术中的两种常见策略——纵向紧急制动避撞和横向紧急转向避撞。首先介绍了这两种避撞策略的基本概念,接着深入分析了临界纵向安全距离的概念及其对避撞模式选择的影响。文中特别强调了五次多项式换道轨迹模型在计算横向紧急转向避撞安全距离中的应用。最后,通过一个简化的程序实现了避撞策略的模拟和可视化展示,帮助读者更好地理解不同避撞方式的应用场景和技术细节。 适合人群:汽车工程技术人员、交通安全研究人员、自动驾驶开发者。 使用场景及目标:适用于研究和开发车辆主动避撞系统的专业人士,旨在提高对避撞策略的理解,优化避撞算法的设计,提升行车安全性。 其他说明:文章不仅提供了理论分析,还结合了具体的数学模型和程序实现,使读者能够从多个角度全面掌握车辆避撞技术的关键要素。