源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Rsync 服务器文件同步的搭建以及使用

  • 时间:2020-08-14 00:36 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Rsync 服务器文件同步的搭建以及使用
rsync 是类unix系统下的数据镜像备份工具, 它可以镜像保存整个目录树和文件系统。并且很容易做到保持原文件的权限,时间,软硬链接等等。 无须特殊权限即可安装。 特点: 快速、  第一次同步时会复制全部内容,但在下一次他只传修改过的文件,并且在传输过程中可以实行压缩及解压缩操作,因此可以使用更少带宽。 安全、 可以使用scp、ssh等方式来传输文件,当然也可以通过直接的socket链接 支持匿名传输,以方便进行网站镜像。 首先 下载安装包
[u]复制代码[/u] 代码如下:
wget http://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz    tar zxvf rsync-3.0.9.tar.gz    cd rsync-3.0.9    ./configure make make install
安装完毕后,新建sync配置文件
[u]复制代码[/u] 代码如下:
vim /etc/rsyncd.conf    uid=www    gid=www    max connections=1000    use chroot=no    log file=/var/log/rsyncd.log    pid file=/var/run/rsyncd.pid    lock file=/var/run/rsyncd.lock    [test]    path=/data0/htdocs/ comment = www.test.com CDN src files    ignore errors    read only = no    hosts allow = 127.0.0.1 192.168.1.0/24 10.1.1.0/24 hosts deny = *
修改配置文件权限  以及项目目录权限
[u]复制代码[/u] 代码如下:
chmod 644 /etc/rsyncd.conf    chown www.www /data0/htdocs
开启rsync
[u]复制代码[/u] 代码如下:
rsync --daemon
服务端与客户端配置一样   在服务端执行
[u]复制代码[/u] 代码如下:
rsync -rtuv --delete /data0/htdocs/ 10.1.1.195::test/
将本地的/data0/htdocs/下的所有文件同步到 客户端10.1.1.195服务器的test模块下 在客户端执行
[u]复制代码[/u] 代码如下:
rsync -vzrtopg --delete --progress www@10.1.1.195::test /data0/htdocs/
将远程服务器10.1.1.195下的test模块内容 同步到本地/data0/htdocs/下 上面这个命令行中-vzrtopg代表的意思是:     -v表示verbose(详细)     -z表示zip(压缩)     -r表示recursive(递归目录)     -topg是保持文件原有属性如o=owner(属主)、t=times(时间)、p=perms(权限)、 g=group(组)的参数     -H表示保持硬连接     -l:保留软链结     -u:表示只更新源文件比目标时间新的文件     --progress是指显示出详细的进度情况     --delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。 以下是过程中容易分发生的错误 rsync: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory 解决办法: 在/etc/ld.so.conf中加一行/usr/local/lib   运行ldconfig     在运行 rsync --daemon即可 报错原因: 可能之前更新过iconv库,如果你不是root, ldconfig也运行不了的,解决办法就是,设置环境变量 LDFLAGS=-L/usr/local/lib rsync: failed to connect to 192.168.1.42 (192.168.1.42): No route to host (113) rsync error: error in socket IO (code 10) at clientserver.c(122) [sender=3.0.9] 解决办法: 可能因为客户端或者服务端的防火墙开启 导致无法通信,可以设置规则放行 rsync  或者直接关闭防火墙。 还有一种在同步过程中可能会提示没有权限 解决办法: 看一下模块同步目录权限是否设置的对,模块目录权限要设置为配置文件内的  uid  与 gid  
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部