关于rsync
1、简介 1.1、以下摘自百度百科: rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync,能够更新两台计算机之间的文件和目录。它的特性如下: ①可以镜像保存整个目录树和文件系统。 ②可以很容易做到保持原来文件的权限、时间、软硬链接等等。 ③无须特殊权限即可安装。 ④快速:第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件。rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。 ⑤安全:可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。 ⑥支持匿名传输,以方便进行网站镜象。 软件下载 rsync的主页地址为:http://rsync./ 1.2、以下摘自维基百科: rsync是Unix下的一款应用软件,它能同步更新两处计算机的文件与目录,并适当利用差分编码以减少数据传输。rsync中一项与其他大部分类似程序 或协定中所未见的重要特性是镜像对每个目标只需要一次传送。rsync可拷贝/显示目录属性,以及拷贝文件,并可选择性的压缩以及递归拷贝。 在常驻模式(daemon mode)下,rsync默认监听TCP端口873,以原生rsync传输协定或者通过远程shell如RSH或者SSH伺服文件。SSH情况下,rsync客户端运行程序必须同时在本地和远程机器上安装。 rsync是自由软件,以GNU通用公共许可证发布。
2、使用 2.1、Syntax Local: rsync [OPTION...] SRC... [DEST] Access via remote shell: Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]//从远程主机获取。 Push: rsync [OPTION...] SRC... [USER@]HOST:DEST//同步到远程主机。 Access via rsync daemon: Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST] rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST] Push: rsync [OPTION...] SRC... [USER@]HOST::DEST rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST Usages with just one SRC arg and no DEST arg will list the source files instead of copying.
2.2、OPTIONS: -a archive mode,相当于-rlptgoD -r 是递归 -l 是链接文件,意思是拷贝链接文件 -p 表示保持文件原有权限 -t 保持文件原有时间 -g 保持文件原有用户组 -o 保持文件原有属主 -D 相当于块设备文件 -z 传输时压缩 -P 传输进度 -v 传输时的进度等信息 例:rsync -vzr local-dir 192.168.1.11:/root/remote-dir//把本机的local-dir目录同步到远程机器的/root/remote-dir目录下。
3、安装 3.1、ubuntu上安装 ubuntu缺省安装的安装中,rsync服务是没有开启的。需要做3步: 1、修改/etc/default/rsync,让rsync服务在开机的时候启动。 $ sudo vi /etc/default/rsync 将RSYNC_ENABLE=false改为RSYNC_ENABLE=true 2、创建一个rsyncd.conf,缺省安装中是没有这个文件的。 $ sudo vi /etc/rsyncd.conf 输入以下几行: uid=nobody gid=nobody max connections=3 use chroot=no log file=/var/log/rsyncd.log pid file=/var/run/rsyncd.pid lock file=/var/run/rsyncd.lock secrets file=/etc/rsync.pwd 3、启动rsync服务。 $ /etc/init.d/rsync start
3.2、在ARM开发板上安装 1、先到rsync官网http://rsync./ 下载最新的源码包。当前(2012-08-28)最新为 rsync-3.0.9.tar.gz下载到你的一个Linux系统,比如ubuntu。解压,并进入该目录。 2、确保ubuntu安装了arm-linux-gcc 。 3、shell终端下执行$ ./configure --host=arm-linux//需要指定为arm-linux机器配置。 4、shell终端下执行$ make LDFLAGS="-all-static"//指定为静态编译。 5、把执行make 生成的可执行文件rsync 复制到ARM开发板就可以使用了。
2012-08-28 |
|