rsync定时加脚本实现本地到阿里的ftp文件同步

简介:

现在需要实现西安ftp到阿里服务器的备份

1.西安为B,阿里为A

2.阿里里面的rsync是已经安装好的,查看了是依赖gti安装的,虽然版本不一样但是不影响使用

3.在A里新建rsync配置文件

4.建连接使用的用户密码

5.到B端进行手动同步实验

6.手动没问题之后进行脚本制作,然后定时运行

接下来开始操作,进入A端服务器新建rsyncd.conf配置文件

vim /etc/rsyncd.conf

我这里已经建好了

image2016-9-7%2016%3A16%3A34.png?version

UID = #我直接给的root用户

gie = #我直接给的root组

port= #默认的873接口

address= #默认自己A服务器的地址

use chroot = 3表示连接成功后自动切换目录

max connections = 3最大连接数

pid file = #pid文件存放的位置

lock file = #锁文件存放伪装

log file = #日志文件存放位置

downloads  #(模块名)这里比较重要,rsync客户机同步的时候服务器的目录直接填模块名,填目录会报错

patch = #服务器备份文件的位置

read only =  #是允许别的客户端向本机的服务器端上传

list =  #允许列表

hosts allow = #允许的主机 (可以是IP也可以是IP段,加,号隔开)

hosts deny = #不允许的主机

auth users = # 备份连接使用的账户

secrets file = # 备份连接使用的账户密码(这里直接新建个文件即可)如下图

image2016-9-7%2016%3A17%3A7.png?version=

这里我们A端服务器就配置完成了

需要注意的1.是可以把ftp-xa去掉,这样就都同步到uploads里面反正我们同步的文件夹带各自的名字

                2.允许的主机后面需要添加,要么就直接改成0.0.0.0/24 ,允许所有主机

                3.用户名密码我已经做好,可以不用重新弄了,你B端的本地密码建好就行(密码必须跟服务器账户的密码相同),位置随便,我这里的位置是服务器账户密码存放的位置。

接下来到B端西安

先安装rsync,我直接用的yum安装的,安装完成之后测试备份即可如图

error?i18nKey=editor.placeholder.broken.

rsync -aczp(这里可以看命令介绍,我这里选择的a:归档模式,c:对文件进行效验,z:对备份的文件传输时进行压缩处理,P:保持文件权限)

这个-aczp可以根据喜好来更换

这里手动进行同步,提示输入密码说明连接正常,输入密码之后就会进行传输显示。

为了方便我这里是这个思路进行的

1.先建个脚本

2.每天定时运行脚本

OK,接下来是脚本的运行和定时同步

直接vim /root/rsync.sh

rsync -avrP --progress --password-file=/usr/rsync.pwd  /root/ftp/* backup@121.41.35.149::downloads

 #rsync 后面加输出模式,--progress:显示传输过程 --passwd 后面是保存密码的位置,password-file=/usr/rsync.pwd(看图就明白了)

error?i18nKey=editor.placeholder.broken.

因为正常手动同步会提示输入密码,这里直接加--passwd 让它自动填写密码,就可以不用手动输入密码了,后面是需要备份的目录,然后跟着备份到服务器的用户名和地址 后面是模块名,在服务器的配置里面模块名下面是服务器的文件配置,这么运行会自动备份到

error?i18nKey=editor.placeholder.broken.

脚本完成了,可以直接运行脚本试试效果,要是没问题的话我们进行定时运行脚本

直接crontab -e

会进入编辑模式

00 3 * * * /root/rsync.sh

我这里写的每天3点钟运行sh脚本



本文转自 Bruceweien 51CTO博客,原文链接:http://blog.51cto.com/bruceweien/1932383


相关文章
|
网络协议 Linux 网络安全
文件共享同步5种方式:NFS、NAS、rsync、scp、ftp
谈到文件同步,我们最直接的同步方式是采用rsync的同步软件,rsync同步可以保持server和client的强一致(server中的增删改都会同步client),但在实际场景中rsync可能并不能被采纳。
14254 0
|
8月前
|
JSON 安全 Java
SpringBoot 集成 Apache Camel FTP 实现文件同步
SpringBoot 集成 Apache Camel FTP 实现文件同步
317 0
|
11月前
|
存储 数据安全/隐私保护 Python
用python写一款FTP自动化的脚本
用python写一款FTP自动化的脚本
192 0
|
Java Shell 程序员
Power Shell 脚本——基于curl自动批量获取FTP服务器上的日志文件
Power Shell 脚本——基于curl自动批量获取FTP服务器上的日志文件
233 0
Power Shell 脚本——基于curl自动批量获取FTP服务器上的日志文件
|
安全 Shell 数据安全/隐私保护
python——脚本实现检测目标ip是否存在ftp笑脸漏洞(ftp后门漏洞)
vsftpd2.3.4中在6200端口存在一个shell,使得任何人都可以进行连接,并且VSFTPD v2.3.4 服务,是以 root 权限运行的,最终我们提到的权限也是root;当连接带有vsftpd 2.3.4版本的服务器的21端口时,输入用户中带有“:) ”,密码任意,因此也称为笑脸漏洞。
345 0
python——脚本实现检测目标ip是否存在ftp笑脸漏洞(ftp后门漏洞)
|
弹性计算 安全 Linux
使用阿里的ECS搭建一个FTP服务器
本次搭建基于CentOS 7.6版本。FTP采用的是vsftpd,全称是:very secure FTP daemon 非常安全的ftp后台程序。
使用阿里的ECS搭建一个FTP服务器
|
Web App开发 弹性计算 网络协议
阿里 ESC7 天训练营 - 基于 ECS 搭建 FTP 服务
ECS:云服务器 (Elastic Compute Service, 简称 *ECS*) 是一种处理能力可弹性伸缩的计算服务器 FTP:文件传输协议(File Transfer Protocol,FTP),在网络上进行文件传输的一套标准协议,工作在应用层,使用TCP协议进行传输
466 0
阿里 ESC7 天训练营 - 基于 ECS 搭建 FTP 服务
|
弹性计算 Linux 网络安全
阿里ECS进阶课程学习笔记--基于ECS搭建FTP服务
FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。
325 0
阿里ECS进阶课程学习笔记--基于ECS搭建FTP服务
|
Linux
阿里服务器(CentOs7.3.1611)下配置ftp服务器经验收获
今天在自己买的服务器上试验了一把ftp服务器的配置,下面讲一下经过和收获吧。 首先使用putty远程链接服务器(基本的操作感觉有点废话了,但我还是写上吧)……1.查询本机是否安装了ftp服务 rpm qa |grep vsftpd 或者使用服务状态查看 service vsftpd status 当然,检查结果是没有安装 2.
1907 0
|
Linux Shell
Linux FTP上传脚本
!/bin/bash =========================================== 先输入系统所需要的数据 host="192.
540 0