前言
与cp,scp不同的是rsync工具不但可以本地拷贝,还可以远程拷贝以及同步数据。
rsync工具在做数据备份方便非常受欢迎。试想一下,如果有数千万个文件或目录你怎么样制定拷贝计划呢?每一个选项都会占用系统计算时间,每一个选项错误,都会延迟拷贝计划任务进度,所以做拷贝计划前很有必了解rsync每个选项,做个详细测试。
记得参与过的PICC一个项目就牵扯到元数据同步,用的就是这个,当时对这个工具不熟悉,拷贝也是别人做的,当时目录+文件量是以亿计算的,所以这次一定得摸清楚,搞通了,后面再碰到类似问题,就不用提前做那么多测试了。有备无患么,就是这个理
儿。
常用项小结
#拷贝installxxx文件到/tmp的目录命名为aa
rsync -av install.log.syslog /tmp/aa
#拷贝本地主机文件800.png到远程主机172的/tmp/目录
rsync -av 800.png 192.168.36.172:/tmp/
#拷贝远程主机172中的数据到本地/mnt/目录
rsync -av root@192.168.36.172:/tmp/800.png /mnt/
#拷贝本地aa/到cc/注意需要加/斜杠,不加不行哦。
rsync -a aa/ cc/
#--no-l,去除软连接,如果源目录中含有软连接,不拷贝哟。
rsync -av --no-l /root/bb/ /root/cc/
#-L,把源文件软连接指向的物理文件拷贝到目标目录中。
rsync -avL /root/bb/ /root/cc/
#-u,如果目标目录中文件比源文件中新,不会执行同步。
rsync -avu /root/aa/ /root/bb/
#-delete,如果目标目录bb/中有源目录aa/中没有的东东,会执行清除目标目录bb/中已有的数据。
rsync -av --delete /root/aa/ /root/bb/
#--exclude,用于过滤掉源中不需要拷贝的文件
#--progress,用于观察拷贝进程
rsync -av --progress --exclude="*.txt" /root/aa/ /root/bb/
扩展
本文参考:阿铭Linux
除了常用的拷贝文件cp,scp,rsync之类的工具,删除之类的rm工具,还有一些用户组权限类也需要注意。
#useradd添加用户
#groupadd添加组
#passwd改用户密码
#chown,更改属主属组。
#chmod,更改目录文件权限。
#chgrep,更改默认属主属组。
#umask,更改默认文件目录权限。
参考:http://blog.itpub.net/23655288/viewspace-734212/