### rsync安装与配置详解 #### 一、rsync简介 `rsync`是一款非常强大的文件同步工具,广泛应用于类Unix系统(包括Linux)中进行数据备份和迁移工作。其名称“remote sync”准确地表达了该工具的核心功能:实现远程数据的同步。“rsync”的优势在于高效的数据传输能力,它通过只传输源文件与目标文件之间的差异部分来提高传输效率,尤其适合于网络带宽有限或文件量巨大的场景。 #### 二、rsync的安装与编译 根据给定的部分内容,我们首先来看一下如何安装`rsync`: 1. **下载并解压源码包**: ``` wget http://download.samba.org/pub/rsync/src/rsync-3.0.8.tar.gz tar -zxvf rsync-3.0.8.tar.gz cd rsync-3.0.8 ``` 2. **配置并编译**: ``` ./configure make make install ``` 以上步骤完成了`rsync`的基本安装过程。需要注意的是,在实际操作过程中,可能还需要根据具体的系统环境调整配置参数,比如指定安装路径等。 #### 三、rsync服务端配置 接下来,我们将详细介绍`rsync`的服务端配置。这部分内容非常重要,因为它涉及到如何设置服务端以便客户端能够顺利地进行数据同步。 1. **配置文件路径**:`/etc/rsyncd.conf`。 2. **基本配置项解析**: - `uid=nobody`: 设置运行rsync服务的用户为nobody。 - `gid=nobody`: 设置运行rsync服务的组为nobody。 - `use chroot=no`: 不使用chroot机制,这有助于提高性能,但降低了安全性。 - `max connections=4`: 最大并发连接数为4。 - `pid file=/var/run/rsyncd.pid`: 保存进程ID的文件位置。 - `lock file=/var/run/rsync.lock`: 锁文件的位置。 - `log file=/var/log/rsyncd.log`: 日志文件的位置。 3. **模块配置**: - `[www]`: 定义了一个名为`www`的模块。 - `path=/usr/local/nginx/html`: 指定模块的数据存储路径。 - `ignore errors`: 忽略一些文件读取错误。 - `readonly=true`: 设置此模块为只读模式,客户端只能获取数据而不能修改数据。 - `list=false`: 不允许列出模块中的文件列表。 - `hosts allow=192.168.0.18`: 允许IP地址为192.168.0.18的客户端访问此模块。 - `hosts deny=0.0.0.0/32`: 明确拒绝其他所有IP地址访问此模块。 - `auth users=backup`: 设置用户名为`backup`,客户端访问此模块时必须提供正确的用户名和密码。 - `secrets file=/etc/rsyncd.scrt`: 密码文件的位置。 4. **密码文件配置**:在指定的密码文件`/etc/rsyncd.scrt`中,格式应为`用户名:密码`。例如: ``` backup:backup_pwd ``` 5. **启动服务**: ``` /usr/local/bin/rsync --daemon ``` 为了确保服务每次重启后都能自动启动,可以在系统启动脚本中添加如下内容: ``` echo "rsync --daemon" >> /etc/rc.local ``` #### 四、客户端同步命令示例 假设服务器IP地址为192.168.0.10,模块名为`www`,客户端可以使用以下命令进行同步: ``` /usr/local/bin/rsync -vzrtopg --delete --exclude "logs/" --exclude "conf/ssl.*" --progress backup@192.168.0.10::www /tmp --password-file=/etc/backserver.pass ``` 其中: - `-v`: 增加输出信息的详细程度。 - `-z`: 开启压缩。 - `-r`: 递归复制目录。 - `-t`: 保留原文件的时间戳。 - `-o`: 保留原文件的所有者。 - `-p`: 保留原文件的权限。 - `-g`: 保留原文件的组。 - `--delete`: 删除目标端多余的文件。 - `--exclude`: 排除特定文件或目录。 - `--progress`: 显示同步进度。 - `--password-file`: 指定密码文件路径。 通过以上步骤,我们可以完成`rsync`的安装、服务端配置以及客户端同步操作。这对于构建高效的文件同步方案非常有帮助。
tar -zxvf rsync-3.0.8.tar.gz
cd rsync-3.0.8
.configure
make
make intsall
2、然后在服务器上(192.168.0.10)创建配置文件
vim /etc/rsyncd.conf //创建配置文件
里面输入:
uid = nobody
gid = nobody
use chroot = no
max connections = 4
pid file = /var/run/rsyncd.pid
locak file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[www] //模块名称
path = /usr/local/nginx/html2 //需要共享的地址
ignore errors
read only = true
list = false
hosts allow = 192.168.0.18 //允许0.18用户的连接(如果多个就用,分割开)
host deny = 0.0.0.0/32
auth users = backup //用户backup才能访问
secrets file = /etc/rsyncd.scrt //密码所在的文件(格式: 用户名:密码如 backup:backup_pwd)
- 粉丝: 0
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助