实现: 定时增量同步ftp服务器上的文件夹

1.UBUNTU上模拟搭建一个FTP服务器

2.shell脚本实现ftp增量同步到目标服务器

3.定时触发

1.UBUNTU上模拟搭建一个FTP服务器

<1>检查是否安装了vsftpd

vsftpd -version

如果未安装使用如下命令安装

sudo apt-get install vsftpd

安装完成后,再次输入vsftpd -version命令查看是否安装成功

<2>新建一个文件夹用于FTP的工作目录

mkdir -p /data/ftp

<3>新建ftpname用户并设置密码以及工作目录

sudo useradd -d /data/ftp/ -s /bin/bash ftpname

为新建的用户设置密码

passwd ftpname

<4>修改vsftpd配置文件

vim /etc/vsftpd.conf

设置属性值 
anonymous_enable=NO #禁止匿名访问 
local_enable=YES 
write_enable =YES 
保存返回

<5>启动vsftpd服务

 service vsftpd start

<6>在任意浏览器里面输入ftp://ip地址
输入账号,密码登录即可

<7>浏览远程ftp服务器内容也可以选择windows工具filezilla。

2.shell脚本实现ftp增量同步到目标服务器

<1>目标服务器安装lftp:

sudo apt-get install lftp

<2>shell脚本

--delete: 如果远程目录下已经没有某个文件,而目标服务器有,则删除这个文件。

--only-newer: 只下载新的文件。

如下:mirror --delete --only-newer --verbose /data/ftp /data/buildfarm,表示自动备份远处ftp服务器的 /data/ftp文件夹,到目标服务器目录的/data/buildfarm文件夹下,并且删除已经不存在的文件,并且只下载最新的文件,再给出详细的输出。

vim /data/ftp_download.sh

#!/bin/bashlftp -u ftpname,ftpwd 172.28.21.246 << EOFmirror --delete --only-newer --verbose /data/ftp /data/buildfarm
bye
EOF

参考:https://www.cnblogs.com/visionfang/archive/2012/09/27/2706309.html

3.定时触发

可选两种方式。

1、使用crontab

<1>安装crontab

安装:apt-get install cron
启动:service cron start
重启:service cron restart
停止:service cron stop
检查状态:service cron status
查询cron可用的命令:service cron

<2>vim /etc/crontab

新增一行 00 7 * * 1-6 root /data/ftp_download.sh 。表示周一到周六每天早上7点执行一次ftp_download.sh同步脚本。

crontab语法命令详解

root@ubuntu:/data/bakdata/jira_bak# vim /etc/crontab# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
00 7 * * 1-6 root /data/ftp_download.sh

<3> service crond start  //重启服务

2.选择jenkins定时触发

方便查看日志

ftp搭建和定时增量同步实现相关推荐

  1. 通过Logstash实现mysql数据定时增量同步到ES

    文章目录 前言 一.系统配置 二.同步步骤整体概览 三.logstash数据同步实战 1.新建mysql表 2.ES中新建索引 3.Logstash 管道配置 4.启动Logstash 5.测试 6. ...

  2. java定时增量同步,一种可配置的定时数据同步方法与流程

    本发明涉及数据交换技术,尤其涉及一种可配置的定时数据同步方法.解决企业内部异构系统之间的数据同步问题.主要利用计算机多线程技术.XML技术.数据库技术实现.具有简单配置.快速部署.灵活扩展的特点,并且 ...

  3. datax实现mysql增量同步_datax 3.0配合crontab实现数据定时增量同步

    使用datax 实现数据增量同步踩坑记录 前提概要 由于项目上需要将a服务器数据同步至b服务器,一开始使用mysql主从复制,但是由于主从同步无法触发位于b服务器的触发器,只能放弃此方案.后来找到了d ...

  4. ODPS 数据全量/增量同步方案

    随着业务量增加,原采用的mysql 对大量业务数据的处理效率降低,公司采购的ODPS(MaxCompute) 阿里数据处理平台,进行数据的处理. 一.源数据库 -> ODPS 全量同步,直接同步 ...

  5. SpringBoot + xxl-job 多数据源异构数据增量同步

    SpringBoot + xxl-job 多数据源异构数据增量同步 文章目录 SpringBoot + xxl-job 多数据源异构数据增量同步 一.概述 二.实现步骤 2.1 项目搭建 2.2 接口 ...

  6. [记录]CentOS搭建SVN服务器(主从同步)

    CentOS搭建SVN服务器(主从同步) 1.安装步骤如下: 1)安装: #yum install subversion 2)查看安装位置: #rpm -ql subversion 3)查看版本: # ...

  7. Redis持久化机制 -全量同步与增量同步的区别

    全量同步与增量同步的区别 全量同步:就是每天定时(避开高峰期)或者采用一个周期实现将数据拷贝到一个地方也就是Rdb存储. 增量同步:比如采用对行为的操作实现对数据的同步,也就是AOF. 全量与增量的比 ...

  8. Winform中实现FTP客户端并定时扫描指定路径下文件上传到FTP服务端然后删除文件

    场景 Windows10上怎样开启FTP服务: Windows10上怎样开启FTP服务_BADAO_LIUMANG_QIZHI的博客-CSDN博客 上面在Windows上搭建FTP服务器之后,会接收客 ...

  9. flink实时同步mysql_基于Canal与Flink实现数据实时增量同步(一)

    点击上方蓝色字体,关注我 canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 准备 配置 ...

  10. mysql 分词搜索_实战 | canal 实现Mysql到Elasticsearch实时增量同步

    题记 关系型数据库Mysql/Oracle增量同步Elasticsearch是持续关注的问题,也是社区.QQ群等讨论最多的问题之一. 问题包含但不限于: 1.Mysql如何同步到Elasticsear ...

最新文章

  1. Python可视化神器Yellowbrick使用
  2. 隐马尔科夫模型HMM自学 (2)
  3. 第五讲 类的封装和类的继承
  4. matlab imfilter函数,Matlab的imfilter函数用法详解
  5. 如何构建Android MVVM 应用框架
  6. android drawable转bitmap_Android 内存泄漏优化汇总
  7. mysql hdfs_MySQL数据库与HDFS的实时数据同步
  8. 中国电信披露2021年年报 天翼云营收实现三位数增长
  9. 网络信息如此庞杂,人工智能助你验明真伪
  10. NSThread 在主线操作的三个方法
  11. oracle笔记(2010-1-30)
  12. Redis 事务 实例
  13. BT.656标准简介
  14. 史上最全综述 | 3D目标检测算法汇总!(单目/双目/LiDAR/多模态/时序/半弱自监督)
  15. 产品生命周期管理PLM技术研究
  16. [SDIO] SD card 初始化及常用命令解析(附波形,uboot代码)
  17. 应届毕业生年薪50W,你敢相信吗?
  18. 长沙地铁一号线大客流运输组织优化研究
  19. java jta mysql_JTA实现跨数据库操作
  20. Session | 基于Session改造oa项目的登录功能

热门文章

  1. 如何在网上隐藏自己的IP地址(转)
  2. 6183. 字符串的前缀分数和(每日一难phase2--day18)
  3. Epson LQ1600K3+ 打印区域
  4. jsoup 网页抓取简介详解
  5. 黑莓手机使用手册【转】
  6. 利用树莓派为HP LaserJet 1020配置无线打印功能
  7. 医院防统方软件解决方案
  8. nicelabel java_EditPlus
  9. 信号与噪声经过匹配滤波器后能量
  10. 市县城镇开发边界内1:500地形图无人机航测实践(M300 RTK+P1+大疆智图+航天远景采集软件)