rsync远程同步

rsync远程同步

rsync远程同步: 是一个开源的快速备份工具,可以在不同主机之间同步整个目录 在此远程同步任务中,一个是源端,一个是发起端(发起端和源端同步) 源端负责文件的原始位置,发起端和源端的文件同步

rsync的特点: 拷贝文件,连接文件,设备 可以保持源文件或者目录的权限不变,时间、软硬连接、所有者、所在组等均可以保持不变 可以实现增量同步,即只同步发生变化的数据,数据传输效率很高 可以支持匿名认证

同步方式: 1、完整备份,第一次同步都是完整备份 2、往后同步,都是增量备份(差异备份),只同步变化的数据

rsync命令的选项:

-r:递归模式,目录包含子目录里面的所有文件

-l:复制链接文件,软链接

-v:显示同步过程中的详细信息

-z:传输文件时,进行压缩

-a:归档模式,保留文件的权限,属性等等

-p:保留文件的权限标记(所有者,所在组)

-t:保留时间标记(时间戳)

-g:保留文件的所在组(管理员权限)

-o:保留文件的所有者(管理员权限)

-D:保留设备文件喝其他特殊文件

-H:保留硬链接

--delete:删除目标位置有,但是原始位置没有的文件

下行同步:

从源端同步到客户端

上行同步:

从客户端同步到源端

test1 源端

test2发起端

源端-----发起端

rsync-avz [email protected]::test /opt

rsync 发起同步的命令

-avz: 保留文件权限 v 显示详细过程 z:同步过程中对文件进行压缩

rsync同步速度很困,适合同步大文件,可以结合数据库同步使用

复制同步:rsync -avz --password-file=/etc/server.pass [email protected]::test /opt/

监控事件队列

cat /proc/sys/fs/inotify/max_queued_events

最多监控的实例

cat /proc/sys/fs/inotify/max_user_instances

每个实例最多监控的文件数

cat /proc/sys/fs/inotify/max_user_watches

inotify:通知接口,可以用来监控文件系统的各种变化情况,文件存取,删除 移动 修改都可以被监控

inotify机制喝rsync配合在一起使用,既可以通知变化,也可以实现同步

inotifywait -mrq -e modify,create,move,delete /opt/test/

-m:表示持续监控

-r:递归整个目录

-q:信息提示

-e:指定监控的事件,多个事件用逗号隔开

rsync -azH --delete --password-file=/etc/server.pass /opt/data/ [email protected]::test/

在文件数量较多的情况下,比如百万或者千万级别的文件,rm-rf *速度很慢

rsync可以实现快速删除大量的文件

rsync --delete-before -a -H -v --progress --stats /home/blank /opt/test1

--delete-before:

你可能感兴趣的:(运维)