rsync文件同步.ppt

合集下载

rsync文件同步案例

rsync文件同步案例

rsync文件同步案例服务端:192.168.56.10客户端:192.168.56.11、192.168.56.12(实例2和3用到)sersync+rsync:192.168.56.13(实例2和3用到)准备2台红帽linux系统虚拟机,先将防火墙以及selinux关闭,安装xinetd服务# iptables -F# service iptables save# setenforce 0# yum –y install xinetd (需提前搭建好yum源,详细不做介绍)一、实例1(基础)1、编辑rsync配置文件[root@www ~]# cat /etc/rsyncd.confuid=nobodygid=nobodyuse chroot=yesaddress=192.168.56.11port 873log file=/var/log/rsyncd.logpid file=/var/run/rsyncd.pidhosts allow=192.168.56.0/24[webroot]path=/webrootcomment= web root share with rsyncread only=yesdont compress=*.gz *.bz2 *.tgz *.rar *.zip --不需要压缩的文件列表auth users=user01 user02secrets file=/etc/rsyncd_user.db2、编辑登录用户文件[root@www ~]# vim /etc/rsyncd_user.dbuser01:123# chmod 600 /etc/rsyncd_user.db --密码数据文件的权限必须600,否则服务启不来3、新建webroot,以及修改所属用户和组# mkdir /webroot# chown nobody.nobody /webroot/4、启动rsync# chkconfig rsync on#/etc/init.d/xinetd start5、查看进程以及端口是否已经起来6、测试1:(将服务端的文件同步到客户端)1)在服务端新建测试文件# touch /webroot/1.text1)在客户端新建测试文件夹# mkdir /rsync2)在客户端执行同步命令# rsync -avz user01@192.168.56.10::webroot /rsyncrsync -avz user01@192.168.56.10::webroot /rsync等同于下面的命令rsync -avz rsync://user01@192.168.56.10/webroot /rsync/7、测试2:(将客户端的文件同步到服务端)1)在客户端执行[root@www ~]# rsync -avz /rsync/ rsync://user01@192.168.56.10/webroot由于rsyncd.conf中[webroot]为read only=yes,所以同步失败2)在服务端修改rsyncd.conf[root@www ~]# vim /etc/rsyncd.confuid=nobodygid=nobodyuse chroot=yesaddress=192.168.56.11port 873log file=/var/log/rsyncd.logpid file=/var/run/rsyncd.pidhosts allow=192.168.56.0/24[webroot]path=/webrootcomment= web root share with rsyncread only=yesdont compress=*.gz *.bz2 *.tgz *.rarauth users=user01 user02secrets file=/etc/rsyncd_user.db[webroot2]path=/webroot2comment= web2 root share with rsyncread only=nodont compress=*.gz *.bz2 *.tgz *.rarauth users=user01 user02secrets file=/etc/rsyncd_user.db3)新建webroot2,以及修改所属用户和组# mkdir /webroot2# chown nobody.nobody /webroot2/4)重启rsync# /etc/init.d/xinetd restart5)在客户端新建测试文件# touch /rsync/2.test6)在客户端执行同步命令[root@www ~]# rsync -avz /rsync/ rsync://user01@192.168.56.10/webroot28、不需要输入密码的同步方式(适合于脚本方式调用)1)在客户端编辑密码文件[root@www ~]# vim /root/passwd.txt123[root@www ~]# chmod 600 /root/passwd.txt2)在服务端新建测试文件[root@www ~]# touch /webroot/3.test3)测试二、实例2:(使用sersync整合rsync,实现WEB页面同步更新,亦可做数据备份之用.)--daemon通道准备(4台linux):1、sersync+rsync具备sersync2.5_32bit_binary_stable_final.tar.gz2、将sersync+rsync主机名为sersync,另外3台linux的主机名名为webserver1、webserver2、webserver3便于区分3、在3台linux新建/webroot,所属用户和组都是nobody4、在3台linux安装xinetd开始:1、在3台linux都编辑rsyncd.confvim /etc/rsyncd.confuid=nobodygip=nobodyuse chroot=yesaddress=192.168.56.0port 873log file=/var/log/rsyncd.logpid file=/var/run/rsyncd.pidlock file=/var/run/rsyncd.lockhosts allow=192.168.0.0/24hosts deny=*[webroot]path=/webrootcomment= web root share with rsyncread only=noauth users=user01secrets file=/etc/rsyncd_user.db2、在4台主机上编辑登录远程服务器的账号/密码# vim /root/passwd.txt123# chmod 600 /root/passwd.txt3、在三台机器上启用服务:# chkconfig rsync on# service xinetd start4、在sersync+rsync主机解压sersync2.5_32bit_binary_stable_final.tar.gz[root@sersync ~]# tar -xf sersync2.5_32bit_binary_stable_final.tar.gz5、编辑# vim /root/GNU-Linux-x86/confxml.xml<sersync><localpath watch="/var/tmp"><remote ip="192.168.56.10" name="webroot"/><remote ip="192.168.56.11" name="webroot"/><remote ip="192.168.56.12" name="webroot"/><!--<remote ip="192.168.8.39" name="tongbu"/>--><!--<remote ip="192.168.8.40" name="tongbu"/>--></localpath><rsync><commonParams params="-artuz"/><auth start="true" users="user01" passwordfile="/root/passwd.txt"/><userDefinedPort start="false" port="873"/><!-- port=874 --><timeout start="false" time="100"/><!-- timeout=100 --><ssh start="false"/></rsync><failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60mins execute once--><crontab start="false" schedule="600"><!--600mins--><crontabfilter start="false"><exclude expression="*.php"></exclude><exclude expression="info/*"></exclude></crontabfilter></crontab><plugin start="false" name="command"/></sersync>如图:6、启动sersync# ./sersync2 -d –rset the system paramexecute:echo 50000000 > /proc/sys/fs/inotify/max_user_watchesexecute:echo 327679 > /proc/sys/fs/inotify/max_queued_eventsparse the command paramoption: -d run as a daemonoption: -r rsync all the local files to the remote servers before the sersync work daemon thread num: 10parse xml config filehost ip : localhost host port: 8008daemon start,sersync run behind the consoleuse rsync password-file :user is user01passwordfile is /root/passwd.txtconfig xml parse successplease set /etc/rsyncd.conf max connections=0 Manuallysersync working thread 12 = 1(primary thread) + 1(fail retry thread) + 10(daemon sub threads) Max threads numbers is: 42 = 12(Thread pool nums) + 30(Sub threads)please according your cpu ,use -n param to adjust the cpu rate------------------------------------------rsync the directory recursivly to the remote servers onceworking please wait...execute command: cd /var/tmp && rsync -artuz -R --delete ./ user01@192.168.56.10::webroot --password-file=/root/passwd.txt >/dev/null 2>&1run the sersync:watch path is: /var/tmp参数说明:-d以后后服务器的方式启动-r清除远程服务器文件中本地服务器没有的文件-o 指定配置文件,默认在本在目录加载-n 指定线程数量7、测试在sersync_server上的/var/tmp目录中做文件的增删改则这些操作会被同步至其它三台webserver在sersync_server上# touch /var/tmp/1结果如下图:三、实例3:(使用sersync整合rsync,实现WEB页面同步更新,亦可做数据备份之用.)--ssh通道1、设置SSH使用密钥对验证:# ssh-keygen -t rsa# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.36 --使用root用户验证(实际环境中使用普通账号)2、配置sersync:# cd /opt/sersync# cp -a confxml.xml confxml_ssh.xml# vim /opt/sersync/confxml_ssh.xml。

Rsync(远程同步):linux中Rsync命令的实际示例

Rsync(远程同步):linux中Rsync命令的实际示例

Rsync(远程同步):linux中Rsync命令的实际⽰例rsync的(远程同步)为在Linux / Unix系统局部拷贝和同步⽂件和⽬录远程以及⼀个最常⽤的命令。

随着rsync命令的帮助,您可以复制并在⽬录中远程和本地同步数据,在磁盘和⽹络,进⾏数据备份和两台Linux机器之间的镜像。

Rsync本地和远程⽂件同步本⽂介绍rsync命令的10个基本和⾼级的⽤法在基于Linux的机器远程和本地传输⽂件。

你并不需要以root⽤户运⾏rsync命令。

Rsync命令的⼀些优点和功能1. 它有效地将⽂件复制到远程系统或从远程系统同步。

2. ⽀持复制链接,设备,所有者,组和权限。

3. 这是⽐快SCP(安全复制),因为rsync使⽤远程更新协议,允许转让只是两套⽂件之间的差异。

第⼀次,它从源到⽬标复制⽂件或⽬录的整个内容,但从下⼀次,它只将已更改的块和字节复制到⽬标。

4. rsync的消耗更少的带宽,因为它使⽤压缩和解压缩⽅法在发送和接收数据两端。

rsync命令的基本语法# rsync options source destination与rsync命令⼀起使⽤的⼀些常见选项1. -v:详细2. -r:将数据递归(但不保存时间戳和权限,同时传输数据3. -a:归档模式下,归档模式允许递归地拷贝⽂件,同时也保留了符号链接,⽂件权限,⽤户组所有权和时间戳4. -z:压缩⽂件中的数据5. -h:在⼈类可读的格式⼈类可读,输出数字推荐阅读:在Linux机器上安装rsync我们可以⽤下⾯的命令的帮助安装的rsync包。

# yum install rsync (On Red Hat based systems)# apt-get install rsync (On Debian based systems)1.本地复制/同步⽂件和⽬录在本地计算机上复制/同步⽂件以下命令将同步本地计算机上的单个⽂件从⼀个位置到另⼀个位置。

rsync文件备份同步

rsync文件备份同步

rsync⽂件备份同步1、rsync有两种认证协议:ssh认证协议 rsync server端不需要启动daemon进程,所以不⽤配置/etc/rsyncd.conf,只需要获取远程host的⽤户名密码 例: rsync -avz /src -e "ssh -p36000" root@192.168.198.175:/dest #修改了ssh 协议的端⼝,默认是22,-a ⽂件宿主变化,时间戳不变,-z:压缩数据传输rsync认证协议 rsync server端需要启动daemon进程,并设置对应的配置⽂件/etc/rsyncd.conf 例:rsync -av /src --port=36000 root@192.168.198.175::modual/dest2、/etc/rsyncd.conf 配置 log file = /var/log/rsyncd.log pid file = /var/run/rsyncd.pid lock file = /var/run/rsyncd.lock uid = root gid = root use chroot = no secrets file = /etc/rsync.secrits hosts allow = 192.168.0.0/22 0/24 [modual] #定义的模块,在rsync的命令中不⽤写绝对路径了 path = /disk2/pub/club comment= club pub auth users = club timeout = 600 read only = no list = no3、rsync.secrets 配置 cat /etc/rsync/rsync.secrets admin:root #⽤户名:⼝令 mark:passwdrsync在同步⽂件的同时,可以保持原来⽂件的权限、时间、软硬链接等附加信息,详情请参考:。

rsync功能详解

rsync功能详解

rsync 功能详解目录第一章引言 (2)1.1. 编写目的 (2)1.2. 背景 (2)1.3. 参考资料.................................................................................... 错误!未定义书签。

第二章工具概述 (3)2.1. 简介 (3)2.2. 特性 (3)第三章运行环境 (4)3.1. 硬件要求 (4)3.2. 软件依赖 (4)第四章安装配置 (5)4.1. 安装包获取 (5)4.2. 安装 (5)4.3. 服务端配置 (5)4.4. 服务端启动 (6)第五章使用说明 (7)5.1. 服务端 (7)5.2. 客户端 (10)第一章引言1.1. 编写目的本文档是对rsync数据同步工具的使用说明手册,在本文档对rsync数据同步工具的使用场景、操作命令、参数进行了详细具体的描述,通过该文档读者可以了解该工具的所有功能以及具体操作命令。

1.2. 背景该工具使用者主要面向公司项目管理者、项目实施人员、系统维护人员及其他有关人员。

工具主要功能为系统数据迁移,使用时项目管理者与客户沟通,将工具部署在客户环境,对用户数据进行远程传输迁移。

第二章工具概述2.1. 简介rsync是一个数据同步工具,即可实现本地数据同步,也可实现本地和远端两个主机数据同步,通过LAN/WAN快速同步多台主机间的文件。

rsync引用“Rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法可以实现只传送两个文件的不同部分,而不是每次都整份传送,因此速度比较快。

rsync工具分为两个部分:服务端和客户端,服务端以daemon模式去运行,在以daemon 方式运行时,rsync server会打开一个873端口,等待客户端去连接。

连接时,rsync server 会检查口令是否相符,若通过口令检查,则可以开始进行文件传输,rsync也支持匿名传输。

Linux命令行使用技巧如何使用rsync命令进行文件同步

Linux命令行使用技巧如何使用rsync命令进行文件同步

Linux命令行使用技巧如何使用rsync命令进行文件同步Linux命令行使用技巧:如何使用rsync命令进行文件同步在Linux系统中,rsync是一个强大而灵活的命令行工具,用于在不同目录之间同步文件和文件夹。

它不仅可以在本地文件系统之间进行同步,还可以在本地和远程系统之间进行同步。

本文将介绍如何使用rsync命令进行文件同步,以及一些常用的技巧和注意事项。

1. 安装rsync命令在开始使用rsync之前,需要确保系统中已经安装了该命令。

如果尚未安装,可以通过以下命令在终端中进行安装:```sudo apt-get install rsync```输入该命令后,系统会提示输入管理员密码确认安装。

安装完成后,即可开始使用rsync命令。

2. 基本用法rsync命令的基本用法如下:```rsync [options] source destination```其中,source表示源文件或目录的路径,destination表示目标文件或目录的路径。

下面是一些常用的选项:- `-v`:显示详细输出,可了解文件传输的过程和结果。

- `-r`:递归同步目录及其子目录。

- `-a`:归档模式,保持文件的所有元数据,包括权限、所有者和时间戳。

- `-z`:压缩传输数据,减少网络流量。

- `--delete`:删除目标中不存在于源中的文件。

例如,要将本地目录`/home/user/source`同步到本地目录`/home/user/destination`,可以使用以下命令:```rsync -avz /home/user/source /home/user/destination```该命令会将`source`目录中的所有文件和子目录同步到`destination`目录中。

3. 本地文件同步rsync命令可以轻松实现本地文件之间的同步。

下面是使用rsync 命令进行本地文件同步的示例:- 将文件从源目录复制到目标目录:```rsync -avz /path/to/sourcefile /path/to/destination```- 将源目录的所有文件和子目录同步到目标目录:```rsync -avz /path/to/source/ /path/to/destination```- 删除目标目录中不存在于源目录中的文件:```rsync -avz --delete /path/to/source/ /path/to/destination```4. 远程文件同步rsync命令还可以用于在本地和远程系统之间同步文件。

Linux命令高级技巧使用rsync命令进行远程文件同步

Linux命令高级技巧使用rsync命令进行远程文件同步

Linux命令高级技巧使用rsync命令进行远程文件同步rsync是一个强大的数据复制和同步工具,常用于在本地和远程服务器之间进行文件传输和同步。

它不仅能够保持本地和远程文件的一致性,还可以节省带宽和时间。

本文将介绍如何使用rsync命令进行远程文件同步,并分享一些高级技巧。

1. 基本使用基本的rsync命令格式如下:```rsync [options] source destination```其中,source表示源文件或目录,destination表示目标位置。

下面是一些常用的选项:- `-a, --archive`:以归档模式进行同步,保持文件的权限、时间等属性。

- `-v, --verbose`:显示详细输出信息。

- `-z, --compress`:压缩数据传输,节省带宽。

- `-r, --recursive`:递归同步目录及其子目录。

- `-u, --update`:仅复制源文件中更新的部分。

- `-P, --partial --progress`:显示复制进度并支持断点续传。

以下是几个示例:同步本地目录到远程服务器:```rsync -avz /path/to/local/dir user@remote:/path/to/destination```从远程服务器同步文件到本地:```rsync -avz user@remote:/path/to/remote/file /path/to/local/destination ```2. 连接远程服务器在使用rsync进行远程文件同步之前,需要确保能够连接到目标服务器。

一种常见的方式是使用基于ssh协议的认证方式:```rsync -avz -e ssh /path/to/local/dir user@remote:/path/to/destination ```这里的`-e ssh`选项指定了使用ssh进行连接。

3. 同步文件夹rsync不仅可以同步文件,也可以同步整个文件夹及其子文件夹。

Linux命令高级技巧使用rsync命令进行远程文件同步与备份

Linux命令高级技巧使用rsync命令进行远程文件同步与备份

Linux命令高级技巧使用rsync命令进行远程文件同步与备份Linux命令高级技巧:使用rsync命令进行远程文件同步与备份Linux系统是一个强大的操作系统,拥有许多功能强大的命令。

其中之一就是rsync命令,它是一个用于文件同步和备份的工具。

在本文中,我们将探讨如何使用rsync命令来进行远程文件同步与备份。

一、rsync命令简介rsync命令是一个快速而灵活的文件复制工具,它可以在本地或远程系统之间同步和备份文件。

它能够差异化地更新文件,只传输发生变化的部分,从而减少了网络带宽的占用。

rsync还支持数据压缩和加密,保证文件传输的安全性。

二、基本用法使用rsync命令进行远程文件同步与备份非常简单。

下面是rsync命令的基本用法:rsync [options] source destination其中,source是源文件或目录的路径,destination是目标路径。

例如,要将本地目录/home/user1下的所有文件同步到远程主机的目录/home/user2中,可以使用以下命令:rsync -avz /home/user1/ user2@remote:/home/user2/这将按照归档模式(-a)、压缩模式(-z)和详细输出模式(-v)同步文件。

三、远程主机认证在使用rsync命令进行远程文件同步和备份之前,需要确保本地主机与远程主机之间的认证。

可以使用SSH密钥认证,也可以使用密码认证。

1. SSH密钥认证首先,在本地主机上生成公钥和私钥对:ssh-keygen然后将公钥拷贝到远程主机上:ssh-copy-id user2@remote现在,您可以使用rsync命令进行远程文件同步或备份。

2. 密码认证如果您选择使用密码认证,可以在执行rsync命令时使用"-e"选项指定SSH连接的用户名和密码。

例如,以下命令使用密码认证连接到远程主机:rsync -avze ssh /home/user1/ user2@remote:/home/user2/四、常用选项rsync命令有许多选项,可以根据需要进行配置。

Linux命令高级技巧使用rsync命令实现高效的文件同步和备份

Linux命令高级技巧使用rsync命令实现高效的文件同步和备份

Linux命令高级技巧使用rsync命令实现高效的文件同步和备份Linux命令高级技巧:使用rsync命令实现高效的文件同步和备份Unix-like操作系统的用户常常面临着文件同步和备份的需求。

在Linux中,rsync命令是一款非常强大和灵活的文件同步工具,它可以通过局域网或互联网快速高效地同步和备份文件。

本文将介绍如何使用rsync命令实现高效的文件同步和备份。

1. 安装和配置rsync在开始使用rsync命令之前,我们首先需要确认系统中是否已经安装了rsync工具。

如果尚未安装,可以使用以下命令在终端中进行安装:```sudo apt-get install rsync // 适用于Debian/Ubuntu系统sudo yum install rsync // 适用于CentOS/Fedora系统```安装完成后,我们需要对rsync进行一些基本配置。

rsync的配置文件位于/etc/rsyncd.conf,默认情况下该文件不存在,我们需要手动创建并进行相应的配置。

2. 创建rsync配置文件使用文本编辑器创建rsync配置文件,例如:```sudo nano /etc/rsyncd.conf```在配置文件中,我们可以指定需要同步的目录、权限设置等。

以下是一个简单的配置示例:```# rsyncd.confuid = rsyncgid = rsyncuse chroot = yesmax connections = 10log file = /var/log/rsyncd.logpid file = /var/run/rsyncd.pid[backup]path = /path/to/backupcomment = Backup directoryread only = false```在上面的示例中,[backup]是我们定义的一个模块,path参数指定了需要备份的目录。

其他参数如comment、read only等也可以根据需求进行配置。

RSYNC同步文件夹

RSYNC同步文件夹

Redhat 4.0系统A 192.168.1.188系统B 192.168.1.116A服务器B客户机A服务器端配置:1 如没有安装RSYNC软件,那么首先要做的就是下载与安装软件,步骤如下:(因本人安装系统时默认安装,没有测试过)tar -zxvf rsync-2.6.9.tar.gzcd rsync-2.6.9./configure --prefix=/server/rsyncmakemake install2 准备文件:mkdir /etc/rsyncvi /etc/rsync/rsyncd.confvi /etc/rsync/rsyncd.scrtchmod 600 /etc/rsync/rsyncd.scrt3 安装完后,并没有RSYNC的配置文件,故手工创建。

vi /etc/rsync/rsyncd.conf #内容如下uid=rootgid=rootmax connections=4user chroot=yeslog file=/var/log/rsyncd.logpid file=/var/run/rsyncd.pidlock file=/var/run/rsyncd.locksecrets file=/etc/rsync/rsyncd.scrt[squid]path = /usr/local/squid/etc/comment = squidignore errorsread only = yeslist = yeshosts allow = *auth users = squid4.再来创建密码文件.vi /etc//rsync/rsyncd.scrtsquid:123456有多个用户,在第二行列出!处于安全原因,要将该文件更改权限(如果不更改权限,后期复制时,会出现错误) 注:此用户和密码,非系统用户的密码,也就是说系统中无需创建upfiles用户!/usr/bin/rsync --daemon --config=/etc/rsync/rsyncd.conf 注意这里=前后是没有空格的。

Linux命令高级技巧使用rsync进行高效的文件同步

Linux命令高级技巧使用rsync进行高效的文件同步

Linux命令高级技巧使用rsync进行高效的文件同步在计算机领域,Linux操作系统是一款非常流行的开源操作系统。

它具有强大的命令行工具,其中一个非常实用的工具就是rsync命令。

rsync命令可以通过网络在两个目录之间实现文件的高效同步。

在本文中,我们将介绍rsync命令的高级技巧,以便更有效地进行文件同步。

一、基本用法rsync命令的基本用法非常简单,可以使用以下命令格式进行文件同步:rsync [选项] 源目标例如,要将本地目录/var/www/html同步到远程服务器的/var/www/html目录下,可以使用以下命令:rsync -avz /var/www/html/ user@remote:/var/www/html/在这个命令中,-a选项表示使用归档模式进行同步,保留文件的权限、所有者、时间戳等信息;-v选项表示显示同步过程中的详细信息;-z选项表示启用压缩,减少数据传输量。

用户需要将"user"替换为远程服务器的用户名,将"remote"替换为远程服务器的IP地址或域名。

二、增量同步在实际的文件同步过程中,通常只有部分文件发生变化。

使用rsync命令进行全量同步会浪费很多时间和网络带宽。

为了更高效地进行文件同步,可以使用rsync的增量同步功能。

增量同步指的是只同步发生变动的文件,而不是所有文件。

通过使用--delete选项删除目标目录中不存在于源目录的文件,我们可以达到增量同步的效果。

以下是一个实例命令:rsync -avz --delete /var/www/html/ user@remote:/var/www/html/在这个命令中,--delete选项表示删除目标目录中不存在于源目录的文件。

三、排除文件和目录有些文件和目录在进行文件同步时不需要同步,比如日志文件、临时文件等。

为了避免将这些不需要同步的文件传送到目标目录,可以使用--exclude选项。

rsync同步命令详解

rsync同步命令详解

rsync同步命令详解⼀、rsync命令的解释sync(Synchronize,即“同步”)为UNIX操作系统的标准系统调⽤,功能为将内核⽂件系统缓冲区的所有数据(也即预定将通过低级I/O系统调⽤写⼊存储介质的数据)写⼊存储介质(如硬盘)。

sync是⼀个linux同步命令,含义为迫使缓冲块数据⽴即写盘并更新超级块。

在linux系统中,为了加快数据的读取速度,默认情况下,某些数据将不会直接写⼊硬盘,⽽是先暂存内存中,如果⼀个数据被重复写,这样速度⼀定快,但存在⼀个问题,万⼀重新启动,或者是关机,或者是不正常断电的情况下,由于数据还没来得及存⼊硬盘,会造成数据更新不正常,这时需要命令sync进⾏数据的写⼊,即#sync,在内存中尚未更新的的数据会写⼊硬盘中。

所以在关机或者开机之前最好多执⾏这个⼏次,以确保数据写⼊硬盘。

rsync不仅可以远程同步数据(类似于scp),当然还可以本地同步数据(类似于cp),但不同于cp或scp的⼀点是,rsync不像cp/scp⼀样会覆盖以前的数据(如果数据已经存在),它会先判断已经存在的数据和新数据有什么不同,只有不同时才会把不同的部分覆盖掉。

scp ⽤来远程拷贝数据,通过ssh协议通信。

它的语法很简单,类似于cp, 唯⼀不同的是,源地址或者⽬标地址需要使⽤远程主机的ip或者hostname. 例如要把本地的数据拷贝到远程⼀台主机(192.168.0.0)的/data/⽬录下,可以这样实现: scp /dir/filename root@192.168.0.0:/data/其中filename 可以是⽬录也可以是⽂件。

或者也可以把远程的⽂件拷贝到本地: scp root@192.168.0.0:/data/filename /data/⼆、rsync的命令格式:1. rsync [OPTION]... SRC DEST2. rsync [OPTION]... SRC [USER@]HOST:DEST3. rsync [OPTION]... [USER@]HOST:SRC DEST4. rsync [OPTION]... [USER@]HOST::SRC DEST5. rsync [OPTION]... SRC [USER@]HOST::DEST6. rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]对应于以上六种命令格式,rsync有六种不同的⼯作模式: 1)拷贝本地⽂件。

rsync文件同步详解

rsync文件同步详解

rsync⽂件同步详解⼀. 环境和测试说明rsync(remote sync)是unix及类unix平台下的数据镜像备份软件,它不像FTP那样需要全备份,rsync可以根据数据的变化进⾏差异备份,从⽽减少数据流量,提⾼⼯作效率rsync主要分为三个配置⽂件,分别是rsyncd.conf(主配置⽂件),rsyncd.secrets(密码⽂件),rsyncd.motd(服务器信息⽂件)本⽂件以2台机器为列⼦进⾏说明pc1,IP:192.168.0.230,作为rsync服务器,需要配置rsyncd.conf⽂件pc2,IP:192.168.0.234,作为rsync客户端,不需要配置rsyncd.conf,⽂件可为空在服务器端创建/common⽬录作为共享⽬录,复制⼀些测试⽂件到该⽬录中,进⾏测试yum -y install rsync #centos默认安装了mkdir /common; cp /etc/init.d/* /common/⼆. 主配置⽂件说明vim /etc/rsyncd.confmotd file = /etc/rsyncd.motd #设置服务器信息提⽰⽂件,在该⽂件中编写提⽰信息transfer logging = yes #开启rsync数据传输⽇志功能log file = /var/log/rsyncd.log #设置⽇志⽂件名,可通过log format参数设置⽇志格式pid file = /var/run/rsyncd.log #设置rsync进程号保存⽂件名称lock file = /var/run/rsync.lock #设置锁⽂件名称port = 873 #设置服务器监听的端⼝号,默认是873address = 192.168.0.230 #设置本服务器所监听⽹卡接⼝的ip地址uid = nobody #设置进⾏数据传输时所使⽤的帐户名或ID号,默认使⽤nobodygid = nobody #设置进⾏数据传输时所使⽤的组名或GID号,默认使⽤nobody#若为yes, rsync会⾸先进⾏chroot设置,将根映射在下⾯的path参数路径下,对客户端⽽⾔,系统的根就是path参数指定的路径。

rsync远程同步

rsync远程同步

rsync远程同步⼀、rsync概述1、rsync的概念rsync,remote synchronize顾名思义就知道它是⼀款实现远程同步功能的软件,它在同步⽂件的同时,可以保持原来⽂件的权限、时间、软硬链接等附加信息。

rsync是⽤ “rsync 算法”提供了⼀个客户机和远程⽂件服务器的⽂件同步的快速⽅法,⽽且可以通过ssh⽅式来传输⽂件,这样其保密性也⾮常好,另外它还是免费的软件。

rsync 远程同步:⼀款快速增量备份⼯具 Remote Sync,远程同步⽀持本地复制,或者与其他SSH、rsync主机同步。

作⽤:做数据备份备份⽅式:完全备份、增量备份2、rsync的应⽤rsync是⼀个开源的快速备份⼯具,可以在不同主机之间镜像同步整个⽬录树,⽀持增量备份,并保持链接和权限,且采⽤优化的同步算法,传输前执⾏压缩,因此⾮常适⽤于异地备份、镜像服务器等应⽤。

3、rsync源服务器在远程同步任务中,负责发起rsync同步操作的客户机称为发起端,⽽负责响应来⾃客户机的rsync同步操作的服务器称为同步源。

在同步过程中,同步源负责提供⽂件的原始位置,发起端应对该位置具有读取权限。

4、scp和rsync区别当⽂件数据很⼤时候:SCP ⽆法备份⼤量数据;特点:先统⼀信息,像windows复制RSYNC 边复制,边⽐较,边统计。

5、rsync客户端好处:优点:第⼀次同步时 rsync 会复制全部内容,但在下⼀次只传输修改过的⽂件。

⽀持增量备份。

选择性的保持:符号链接,硬链接,⽂件属性,权限及时间等。

传输前执⾏压缩。

适⽤于异地备份,镜像服务器等应⽤。

安全,使⽤ssh做为传输端⼝。

sftp ,ssh⼆、配置rsync源服务器1、配置rsync源服务器的操作步骤1.1 查看rsync是否安装(系统默认已装)rpm -q rsync #⼀般系统已默认安装rsyn1.2 建⽴/etc/rsyncd.conf 配置⽂件 vim /etc/rsyncd.conf #添加以下配置项uid = nobody #也可以为rootgid = nobody #也可以为rootuse chroot = yes #禁锢在源⽬录address = 192.168.229.90 #监听地址,监听本机地址port 873 #监听端⼝ tcp/udp 873,可通过cat /etc/services | grep rsync查看log file = /var/log/rsyncd.log #⽇志⽂件位置pid file = /var/run/rsyncd.pid #存放进程 ID 的⽂件位置hosts allow = 192.168.229.0/24 #允许同步的客户机⽹段[wwwroot] #共享模块名称path = /var/www/html #源⽬录的实际路径(同步的⽬录)comment = Document Root of read only = yes #是否为只读dont compress = *.gz *.bz2 *.tgz *.zip *.rar *.z #同步时不再压缩的⽂件类型auth users = backuper #授权账户,多个账号以空格分隔secrets file = /etc/rsyncd_users.db #存放账户信息的数据⽂件-------------------------------------------------------------------------------uid = nobodygid = nobodyuse chroot = yesaddress = 192.168.229.90port 873log file = /var/log/rsyncd.logpid file = /var/run/rsyncd.pidhosts allow = 192.168.229.0/24[wwwroot]path = /var/www/htmlcomment = Document Root of read only = yesdont compress = *.gz *.bz2 *.tgz *.zip *.rar *.zauth users = backupersecrets file = /etc/rsyncd_users.db----------------------------------------------------------------------------------#如采⽤匿名的⽅式,只要将其中的“auth users”和“secrets file”配置项去掉即可。

RSync实现文件备份同步word资料15页

RSync实现文件备份同步word资料15页

RSync实现文件备份同步RSync实现文件备份同步2019-01-03 21:23转自:实现网站的备份,文件的同步,不同系统的文件的同步,如果是windows的话,需要windows版本cwrsync]一、什么是rsync rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。

rsync是用"rsync算法"提供了一个客户机和远程文件服务器的文件同步的快速方法,而且可以通过ssh方式来传输文件,这样其保密性也非常好,另外它还是免费的软件。

rsync包括如下的一些特性:能更新整个目录和树和文件系统;有选择性的保持符号链链、硬链接、文件属于、权限、设备以及时间等;对于安装来说,无任何特殊权限要求;对于多个文件来说,内部流水线减少文件等待的延时;能用rsh、ssh或直接端口做为传输入端口;支持匿名rsync同步文件,是理想的镜像工具;二、架设rsync服务器架设rsync服务器比较简单,写一个配置文件rsyncd.conf。

文件的书写也是有规则的,我们可以参照上的文档来做。

当然我们首先要安装好rsync这个软件才行;A、rsync的安装;获取rsync rysnc的官方网站:可以从上面得到最新的版本。

目前最新版是3.05。

当然,因为rsync是一款如此有用的软件,所以很多Linux的发行版本都将它收录在内了。

软件包安装#sudo apt-get install rsync注:在debian、ubuntu等在线安装方法;#yum install rsync注:Fedora、Redhat等在线安装方法;#rpm-ivh rsync注:Fedora、Redhat等rpm包安装方法;其它Linux发行版,请用相应的软件包管理方法来安装。

源码包安装tar xvf rsync-xxx.tar.gz cd rsync-xxx./configure--prefix=/usr;make;make install注:在用源码包编译安装之前,您得安装gcc等编译开具才行;B、配置文件rsync的主要有以下三个配置文件rsyncd.conf(主配置文件)、rsyncd.secrets(密码文件)、rsyncd.motd(rysnc服务器信息)服务器配置文件(/etc/rsyncd.conf),该文件默认不存在,请创建它。

rsync指定ssh端口进行文件同步的方法

rsync指定ssh端口进行文件同步的方法

rsync指定ssh端⼝进⾏⽂件同步的⽅法有台服务器因为安全性需要,修改了默认的ssh端⼝为34778端⼝。

因此rsync使⽤ssh同步的时候需要指定ssh的端⼝rsync提供了⼀个-e参数-e参数的作⽤是可以使⽤户⾃由选择想使⽤的shell程序来连接远端服务器,因此也可以设置成使⽤默认的ssh来连接,这样我们就可以加⼊ssh的参数了具体语句写法如下:rsync -e 'ssh -p 34778' username@hostname:SourceFile DestFile单引号,⽬的是为了使引号内的参数为引号内的命令所⽤实例:rsync -auz -e 'ssh -p 43378' /data/svn/ root@192.168.1.254:/data/backup详解:通过rsync,并使⽤auz参数,结合-e修改ssh的端⼝,将本地的/data/svn作为源数据,⽤root⽤户推到远端服务器192.168.1.254的/data/backup⽬录下。

需要注意的是源⽬录和⽬标⽬录是否带"/"结尾是有很⼤区别的源⽬录带"/"结尾⽽⽬标⽬录不带,表⽰将源⽬录⾥⾯的所有⽂件(/data/svn/*)都同步到⽬标⽬录下(/data/backup/*)。

源⽬录带"/"结尾⽽⽬标⽬录也带“/”结尾,则表⽰将源⽬录作为⽂件夹,同步到⽬标⽬录下(/data/backup/svn/*)。

端⼝攻击之873端⼝rsync默认⼝令漏洞1、简介:rsync是Unix下的⼀款应⽤软件,它能同步更新两处计算机的⽂件与⽬录,并适当利⽤差分编码以减少数据传输。

2、Rsync使⽤教程:⽤途:当成镜像备份功能。

优点:速度快,可对⽐本地⽂件,差异备份。

⽤法:1、将/etc/内复制到/tmp/etcrsync –av /etc /tmp2、将rsh.server的/etc 复制到本地 /tmprsync –av –e ssh user@rsh.server:/etc /tmp3、通过rsync提供的服务(daemon),rsync使⽤873端⼝Server:启动rsync,看:/etc/xinetd.d/rsync编辑:/etc/rsyncd.conf设置client端连接账号密码Client:rsync –av –user@hostname::/dir/path /local/path三种模式差异在⼏个分号 :命令:Rsync [-avrlptgoD] [-e ssh] [user@hostIP:/dir] [/local/path]-v 观察模式,输出更多资讯-q 与 –v 相反,仅显⽰错误信息-r 递归复制,针对⽬录-u 仅更新较新的⽂件-l 复制连接的属性-p 复制时保持属性不变-g 保存原有群组-o 保存原有拥有⼈-D 保存原有装置属性-t 保存原有时间属性-I 忽略更新时间属性,档案⽐对较快-z 加上压缩参数-e 使⽤协议通道,例如ssh,-e ssh-a 相对于-rlptgoD,所以-a最常⽤3、安全问题:rsync默认的端⼝是873,可以使⽤nmap扫描IP是否开放该端⼝。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
rsync -v -a -l -z -u '-e ssh -p 22' --stats --progress /home/Tom/map/ Lily@192.168.1.1:/home/Lily/map/
将上述命令写入定时任务即可,文件就可以定时同步了。
注意Lily用户的权限问题,权限最后为755,再高就有问 题了,权限参照上页图片。
这样Tom给Lily发送文件就基本成功了。
Tom发送文件测试
命令:ssh user@主机ip
例如[Tom]#ssh Lily@192.168.1.1 如果无需密码即能登陆则配置就成功了。
Tom将自己的文件发送给Lily命令如下:
rsync文件同步
定时同步
Tom
Lily
Tom机器ssh文件夹下生成公钥和私钥
$ ssh-keygen -t rsa 输入上面的命令后,一直回车即可。
如果是第一次使用该命令,则不会有上图覆盖的提示, 一路回车即可。如果有提示,则尽量不要覆盖原始秘钥, 按回车即可;否则本主机上与其他主机上的同步业务将 失效,一点要小心,如果本主机没有同步业务,可以随 意选择。
Tom主机ssh文件夹
输入后可在ssh文件夹下看到以下两个文件,如果原来就 有则不必改动,可以跳过上面的命令。
Liቤተ መጻሕፍቲ ባይዱy主机修改ssh
将Tom的ssh文件夹下的id_rsa.pub文件内容追加到Lily的 authorized_keys文件中,如果不存在authorized_keys文件, 则创建并追加。
相关文档
最新文档