300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > rsync 一条命令实现远程文件传输

rsync 一条命令实现远程文件传输

时间:2020-06-17 20:11:54

相关推荐

rsync 一条命令实现远程文件传输

rsync简介:

rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步。

它的特性如特点:

1、可以镜像保存整个目录树和文件系统。2、可以很容易做到保持原来文件的权限、时间、软硬链接等等。3、无须特殊权限即可安装。4、快速:第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件。

rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。5、安全:可以使用scp、ssh等方式来传输文件,当然也可以通过直接的socket连接。6、支持匿名传输,以方便进行网站镜象。

前言:

rsync RH自带不需要安装,其他Linux系统需要提前安装,安全、传输速度快,使用范围广。

一条命令即可实现远程文件传输:

rsync -avz /app/ff/data/ root@文件服务器ip地址:/app/ff/data/

举个栗子:

文件服务器ip地址是:10.1.1.0

rsync -avz /app/ff/data/ root@0.0.0.0:/app/ff/data/

环境配置(前提):

一、在1.1.1.1(应用服务器,也就是执行脚本的服务器)上执行以下操作:

1.1 linux查看当前系统 :

cat /etc/issue

1.2 查看rsync是否安装:

rsync

1.3 生成秘钥(一路回车):

ssh-keygen

1.4 打开.ssh文件夹目录:

cd .ssh

1.5 看文件内容:

cat id_rsa.pub

1.6 复制文件内容:

鼠标选中内容

快捷键(复制)

Ctrl+insert

二、在0.0.0.0(文件服务器)上执行以下操作:

2.1 打开.ssh文件夹目录:

cd .ssh

2.2 创建authorized_keys文件,在root根目录执行:

touch .ssh/authorized_keys

2.3 将应用服务器复制的内容粘贴到authorized_keys文件中

快捷键(粘贴):

Shift+insert

注:如果存在多台应用服务器的情况,在末尾处回车另起一行,粘贴即可!

2.4 执行此命令:2.4.1 在root根目录执行:

chmod 600 .ssh/authorized_keys

2.4.2 在root根目录执行:

service sshd restart

三、在1.1.1.1(应用服务器,也就是执行脚本的服务器)上执行以下操作:

3.1 将此脚本复制到/app目录:

略(利用工具传输即可)

3.2 给文件赋予执行权限:

chmod 777 BatchSynAndDelOfFiles.sh

3.3 附上脚本内容:

#!/bin/bashrsync -avz /app/ff/data/ root@0.0.0.0:/app/ff/data/cd /app/ff/data/rm -rf *

释义:此脚本功能点:

1、文件同步2、删除应用服务器上的文件目录及文件

文件内容说明:

1、/app/ff/data/ :本地目录,末尾/如果写上代表data下面的所有文件,如果不写,则代表data整个目录。2、root:用户名3、0.0.0.0 :远程同步服务器ip4、/app/ff/data/:远程文件同步目录

四、定时器_为当前用户创建cron服务

4.1 编辑crontab服务文件:

crontab -e

4.2 粘贴文件内容:

0 0 * * * /bin/sh /app/BatchSynAndDelOfFiles.sh

保存退出

释义:

1、/bin/sh/app/BatchSynAndDelOfFiles.sh 这一字段可以设定你要执行的脚本。

2、bin/sh 是指运行 脚本的命令 后面一段时指脚本存放的路径

3、更多参数配置说明,见附件(双击打开即可)

4.3 查看该用户下的crontab服务是否创建成功:

crontab -l

4.4 启动crontab服务 :

/sbin/service crond start

4.5 查看服务是否已经运行:

ps -ax | grep cron

4.6 测试效果图

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。