`

rsync 使用说明

阅读更多

我主要用rysnc同步文件, rsync是一款非常优秀的文件同步管理软件,它也支持多种操作系统平台,在Unix环境中,rsync有着卓绝的功绩。希望这篇文档能对一些朋友有所帮助。


1. Install

[url]http://www.samba.org/rsync/[/url]

shell> tar zxvf rsync-x.x.x.tar.gz
shell> cd rsync-x.x.x
shell> ./configure && make && make install

目前大部分 Unix/Linux 默认即安装了 rsync。



2. /etc/rsyncd.conf
 
shell> touch /etc/rsyncd.conf
shell> vi /etc/rsyncd.conf


Edit /etc/rsyncd.conf as below:
 
uid = nobody
gid = nobody
use chroot = no
max connections = 5
pid file = /var/run/rsync.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsync.log
 
[<dst-dir>]
path = <dst-dir-fullpath>
ignore errors
read only = no
list = yes
auth users = username
secrets file = /etc/rsyncd.secrets



3. /etc/rsync.secrets
 
shell> echo "jack:password" >> /etc/rsyncd.secrets
shell> chmod 600 /etc/rsyncd.secrets
 
*注:一定要把rsyncd.secrets的权限设为600,否则不能正常进行身份认证。
     包括--password-file指向的密码文件,也必须设成600权限。

     
     
4. Autorun

>>> Idea 1 - only linux <<<

shell> vi /etc/xinetd.d/rsync
 
set DISABLE to yes, the result looks like this:
service rsync
{
        disable         = no  <---------- change to yes
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}


>>> Idea 2 - on openSUSE <<<

shell> echo "/usr/local/bin/rsync --daemon" >> /etc/init.d/boot.local


>>> Idea 3 <<<
 
shell> echo "/usr/local/bin/rsync --daemon" >> /etc/rc.local



5. Run daemon

shell> rsync --daemon
 
*注一:在rsync的man手册的 CONNECTING TO AN RSYNC SERVER 处有提到:
It is also possible to use rsync without a remote shell as the transport. In this case you will connect to a remote  rsync server running on TCP port 873.
 
*注二:在rsync的man手册的 --port=PORT 选项解释中有提到:
This specifies an alternate TCP port number to use rather than the default port 873.



6. rsync 命令实例


6.1 显示目录内容

命令
------
a) rsync <dst-dir>
b) rsync -r <dst-dir>
c) rsync jack@192.168.0.1::<dst-dir>
d) rsync ssh_user@192.168.0.1:<dst-dir>

命令说明
---------
a) 显示<dst-dir>目录
内容 (第一层)
b) 递归显示<dst-dir>目录
内容
c) 显示远程主机<dst-dir>目录内容
   *注1:端口模式, 基于rsync用户的身份验证
   *注2:rsync server上的目录必须具有xx7的权限.
d) 查看
远程 主机<dst-dir>目录 内容
   *注1:remote shell模式, 通过ssh连接的基于系统本地用户的身份验证
   *注2:这里只使用了一个冒号(:),同时用户名是远
程主机 的ssh用户,密码也是ssh用户对应的密码。
   *注3:使用"<dst-dir>",则列出<dst-dir>文件夹本身的信息。若要列出<dst-dir>文件夹内容,应使用"<dst-dir>/"。
   
参数说明
---------
-r          对目录进行递归操作

   
6.2 本地目录之间同步

命令
------
a) rsync -av  --progress <src-dir>/ <dst-dir>             *** 注意(/) ***
b) rsync -av  --progress <src-dir>  <dst-dir>
c) rsync -avu --progress --delete <src-dir>/  <dst-dir>
d) 
rsync -av  --progress --temp-dir=/tmp <src-dir>/ <dst-dir>

命令说明
---------
a) 同步src-dir目录下所有文件到dst-dir目录下
b) 同步src-dir目录下所有文件到dst-dir/src-dir目录下
c) 对src-dir目录内容向dst-dir目录下进行差异更新,有增加/更新则添加替换,有减少则对其删减
d) 比a)多了
--temp-dir=/tmp,即指定/tmp为临时交换区,这样可以避免因目标目录空间不够引起的无法同步文件的错误。

参数说明
---------
-a          相当于 -rlptgoD 的集合
-u          等同于 --update,在目标文件比源文件新的情况下不更新
-v          显示同步的文件
--progress  显示文件同步时的百分比进度、传输速率
--delete    删除目标目录中多于源目录的文件


6.3 异地主机之间同步

命令
------
a) rsync -avz  --progress <src-dir> jack@192.168.0.1::<dst-dir>/

b) rsync -avz  --progress <src-dir> jack@192.168.0.1::<dst-dir>/ --password-file=/home/jack/rsync.jack

c) rsync -avuz  --progress --delete <src-dir> jack@192.168.0.1::<dst-dir>/ --password-file=/home/jack/rsync.jack

d) rsync -avz  --progress jack@192.168.0.1::<dst-dir>/<src-dir> <dst-dir>

命令说明
---------
a) 同步本地<src-dir>目录的内容到远程主机192.168.0.1的<dst-dir>目录下,jack是rsync数据库用户(参见3. /etc/rsync.secrets)
b) 通过自动读取用户密码而实现非交互登录文件同步

c) 较b)多了-u和--delete

d) 同步远程主机内容到本地目录


参数说明
---------
-z                等同于 --compress,对传输的文件压缩,这对节约网络带宽或在网络资源紧张的情况下非常有用
--password-file   引用192.168.0.1上rsync用户jack口令的本地文件,创建方法如下
                  shell> echo "jackpwd" >> /home/jack/
rsync.jack
                  shell> chown jack:wheel 
/home/jack/ rsync.jack
                  shell> chmod 600  /home/jack/ rsync.jack








分享到:
评论

相关推荐

    rsync服务器搭建及使用说明

    在本文中,我们将深入探讨rsync服务器的搭建和使用方法。 首先,我们来了解一下rsync的基本概念。rsync是Remote Sync的缩写,它支持增量传输,能够仅传输文件的改动部分,从而大大提高了数据同步的效率。rsync还...

    cygwin 下 rsync-3.0.8安装及使用说明

    通过阅读“rsync安装包及安装指导”和“使用说明”,你可以更深入地了解rsync的各种特性,包括错误处理、日志记录、以及如何创建定期同步的任务。结合实际操作,rsync将成为你数据管理和备份的强大工具。 总之,...

    linux rsync命令使用手册

    ### Linux Rsync命令使用手册详解 #### 概述 Rsync 是一款快速且功能极其强大的文件复制工具。它能够实现本地文件复制、通过任何远程Shell(例如 SSH 或 RSH)进行远程主机之间的文件复制,或者与远程 rsync 守护...

    Rsync详细讲解和说明

    《Rsync详解与指南》 Rsync是一款强大的文件同步工具,广泛用于系统备份、镜像制作和数据迁移。它的灵活性和高效性使得它在IT领域备受青睐。本文将深入解析Rsync的各项参数及其用法。 一、全局参数 1. `motd file...

    rsync_架设手册

    架设rsync服务器的示例说明 ##### 4.1 全局定义 示例中的全局定义可能包括: ```conf # /etc/rsyncd.conf uid = nobody gid = nogroup address = 0.0.0.0 port = 873 log file = /var/log/rsync.log pid file = ...

    FreeFile Rsync 自动同步使用说明

    平台前端tengine作为代理,后端两台IIS 7提供应用,为减少IIS的压力,使用两台IIS 7作为负载均衡,因此需要保证后端两台IIS 7的配置文件保持一致,在更新服务器时,在一台服务器上更新文件自动同步至另一台。

    图解rsync数据同步部署文档.docx

    通过这篇图解 rsync 数据同步部署文档,我们可以了解 rsync 的基本概念、同步算法、Windows 和 Linux 平台下的安装和配置方法,以及详细的文件同步方法说明。学会使用 rsync 工具,可以帮助我们快速、可靠地实现文件...

    linux rsync 客户端与服务端配置说明

    rsync具有多种特性,包括更新整目录树和文件系统、保留符号链接、硬链接、文件所有权、权限、设备和时间等属性、无需特殊权限即可安装、使用rsh、ssh或直接套接字作为传输方式,还支持匿名rsync,非常适合用于镜像。...

    windows64位下rsync客户端

    例如,如何设置rsync daemon,配置rsync的配置文件(如rsyncd.conf),以及如何使用安全的SSH隧道进行加密传输等,这些都可能在这个文本文件中有详细说明。 Linux公社www.linuxidc.com.url 很显然,这是一个链接到...

    rsync同步脚本以及说明文档.rar

    rsync是一种强大的、高效的数据同步工具,常用于在本地或者远程服务器之间进行文件或目录的备份和迁移。它支持增量同步,能节省大量的...通过阅读提供的说明文档和实践使用,你可以更好地理解和运用rsync的各个功能。

    Linux下rsync服务的深入分析

    - **说明**:当客户端使用`rsync 10.1.1.21::test_rsync`时,日志信息将被记录到`/var/log/test`文件中。可以通过命令`cat /var/log/test`查看具体的日志内容。 ##### 4. `address` - **功能**:指定服务监听的IP...

    rsync+inotify说明.docx

    这个脚本会在`/path/to/watch`目录下监听文件变动,一旦有文件被修改,就会使用rsync将改动同步到远程服务器的`/path/to/destination`。 **注意事项** 1. 安全性:确保rsync的配置中限制了只允许特定主机连接,...

    rsync-3.1.1pre1.tar

    《rsync:Linux与Unix平台的强大同步工具》 在信息技术领域,数据的备份与同步是不可或缺的...对于任何需要管理多台服务器或维护大量数据的IT专业人员而言,熟悉并掌握rsync的使用,无疑是提升工作效率的重要途径。

    rsync-3.0.6.tar.gz

    rsync通常与inotify工具结合使用,以实现文件系统的实时监控和自动同步。inotify是Linux内核提供的一个事件驱动的文件系统通知机制,可以监听文件系统的创建、删除、修改等事件。当监控的目录发生变动时,inotify会...

    bat脚本 rsync免密码 传输windows文件到Linux系统

    说明 利用cwrsync将 bat脚本,一键传输windows文件到linux,当然反过来也是可以的。 将压缩包解压到windows C盘根目录下即可。 请优先阅读“请阅读我.txt” 1、首先使用Pageant加载“putty key”文件夹中的1.ppk,这...

    rsync命令教程 在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项。

    2.1.2也可以以本地模式来使用rsync,如果SRC和DST路径中都没有任何":"符号则表示该命令运行在本地模式,等同于cp命令。 rsync somehost.mydomain.com:: 这种模式则将会列出somehost.mydomain.com.可以访问的所有...

    Rsync+sersync实现数据实时同步备份

    - rsync命令的使用:详细说明了rsync命令的常见参数及其功能,如-a参数代表归档模式、-r参数进行递归复制等。 Rsync命令行工具的使用涉及到命令格式、参数选项,和它如何与各种传输协议配合来完成数据同步任务。...

    rsync3.0.9+inotify-tools3.1.14

    rsync和inotify-tools是两种在Linux环境中广泛使用的工具,它们在系统管理和自动化运维中扮演着重要角色。这里我们详细探讨这两个工具的功能、用途以及如何结合使用以实现服务器之间的文件实时同步。 首先,rsync是...

    rsync-3.0.7.tar.gz

    在使用rsync时,用户通常会通过命令行来执行同步操作。基本的命令格式如下: ```bash rsync [选项] 源 目标 ``` 其中,`选项`可以包括但不限于: - `-a`:归档模式,相当于-rlptgoD,保留所有文件属性。 - `-v`:...

Global site tag (gtag.js) - Google Analytics