基于Linux rsync的日志详细的推送思路
前言
最初的时候,在不同服务器之间同步文件的时候,会经常使用scp,然后定时执行,今天从以为大哥身上学到了,用rsync位推送备份的核心,结合时间控制,完成之前不曾想过的细腻的日志推送备份操作,记录,分享一下,有没有考虑到的也请大家多多指正。
rsync
首先明确,这里说的是Linux rsync命令,就是remote sync(远程同步),可以用在远程同步数据,也可以用在本地同步数据,当然,和scp,cp命令还是有不同的地方了,就是全量和增量的关系,使用scp和cp会无脑的全量覆盖之前的内容,而rsync会判断数据是否存在差异,如果有差异再进行部分覆盖。先列举一下rsync的参数吧:
OPTION选项 | 功能 |
---|---|
-a | 这是归档模式,表示以递归方式传输文件,并保持所有属性,它等同于-r、-l、-p、-t、-g、-o、-D 选项。-a 选项后面可以跟一个 --no-OPTION,表示关闭 -r、-l、-p、-t、-g、-o、-D 中的某一个,比如-a --no-l 等同于 -r、-p、-t、-g、-o、-D 选项。 |
-r | 表示以递归模式处理子目录,它主要是针对目录来说的,如果单独传一个文件不需要加 -r 选项,但是传输目录时必须加。 |
-v | 表示打印一些信息,比如文件列表、文件数量等。 |
-l | 表示保留软连接。 |
-L | 表示像对待常规文件一样处理软连接。如果是 SRC 中有软连接文件,则加上该选项后,将会把软连接指向的目标文件复制到 DEST。 |
-p | 表示保持文件权限。 |
-o | 表示保持文件属主信息。 |
-g | 表示保持文件属组信息。 |
-D | 表示保持设备文件信息。 |
-t | 表示保持文件时间信息。 |
--delete | 表示删除 DEST 中 SRC 没有的文件。 |
--exclude=PATTERN | 表示指定排除不需要传输的文件,等号后面跟文件名,可以是通配符模式(如 *.txt)。 |
--progress | 表示在同步的过程中可以看到同步的过程状态,比如统计要同步的文件数量、 同步的文件传输速度等。 |
-u | 表示把 DEST 中比 SRC 还新的文件排除掉,不会覆盖。 |
-z | 加上该选项,将会在传输过程中压缩。 |
很多,但是常用的不是很多,这些参数建议各位作为一个参照,那么接下来看基础使用案例:
rsync -p /opt/1.txt /opt/user/1.txt #本地使用
rsync -p /opt/1.txt root@192.168.2.10:/opt/1.txt #远程同步
这里有一个下午注意到的额外的点,就是同步的话,如果是用的是脚本而且是远程同步需要先配置ssh免密登录,这里也附上:
ssh-keygen #生成ssh证书
#一路回车
ssh-copy-id -i /home/mysql/.ssh/id_rsa.pub root@192.168.2.10 #下发ssh证书
那么这个使用就可以使用shell脚本,python脚本更加灵活的使用了。
推送
来看一下完整的推送思路:
1、确定日志的内容,构建日志数据,日志的名称以名字和时间并联。
2、然后重点来了,推送过去的日志保留10个时间节点的,但是在使用的是软链过去的日志,这个顿时觉得厉害了,因为这样可以轻松的实现版本的回退。
3、然后编写脚本,进行定时任务。最后附上脚本:
import subprocess
cmd = "rsync -p 1.log root@192.168.1.2:/home/1.txt "
re = subprocess.Popen(cmd, shell=True, stderr=subprocess.PIPE, stdout=subprocess.PIPE).communicate()
print(re[1])
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanehge
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
photoshop蒙版画笔没反应怎么办
PHP中文网 06-24