Articles of rsync

使用shell脚本来检查rsync是否做出任何更改

我有一个rsync的两个目录的bash脚本。 有时候会有变化,可能性不大。 我只想在rsync实际进行更改(添加/更新文件)时才运行命令。 否则,我想跳过它。 有没有我应该看的回报回应?

rsync无法备份一些文件,给出错误22

我试图使用'/ nas'上的NFS挂载卷上的简单rsync备份整个服务器, 这是我的rsync命令 rsync -sav -S –stats -H –numeric-ids –delete -D –exclude-from="/usr/local/bin/rsync_nas1_exclude" / /nas1/ 获取以下错误: rsync: chown "/nas1/home/8003/.local/share/icons/application-x-wine-extension-its.png" failed: Invalid argument (22) 要么 rsync: chown "/nas1/home/8003/.local/share/applications/wine/Programs/FxPro – Trader" failed: Invalid argument (22) 任何想法为什么? 我使用“-s”参数来保护文件名

2个Linux服务器之间的multithreading文件同步

目前我运行rsync的总数为250GB的220万个文件,在6个小时内只需要700K的文件。 有谁知道一个rsync的工具,可以做到这一点与多个线程,所以它变得更快?

如何清理失败的rsync?

我杀了一个本地的“rsync -ah”进程。 它在目标目录中留下垃圾文件,如“.abc.vmdk.zxivMN”。 垃圾文件不会在连续的“rsync -ah”运行中被删除。 细节: 我在同步的两个文件夹上运行diff,并报告:“仅在/ mnt / archive1 / documents / general:.abc.vmdk.zxivMN” 清理临时rsync文件的最佳方法是什么?

为什么rsync自行分岔? 为什么一个这样的分支过程几乎是闲置的(如iotop所见)?

这是指在这里陈述的事情 ,我也遇到了同样的情况。 在我的一台服务器上,我运行了一个rsync,把一个巨大的目录(大于300Gb)备份到安装在同一台机器上的另一个磁盘上。 rsynced的目录包含数千个目录和文件。 我发出了一个单一的rsync命令,'nohup',然后使用'&'命令在后台推送它。 在远程bash shell(使用putty)上给出的完整命令是: nohup rsync -avh /some/local/dir /backup/ >> /opt/rsync.dec22.log & 然后,为了检查被复制的数据是什么速率,我使用了'iotop'命令,发现有3个rsync运行的参数是相同的。 在search时,我发现上面的链接说这是正常的。 但是做一个iotop只监视系统上运行的那些和唯一的rsync进程,我发现一个进程正在读文件,一个正在写它们,但是一个进程正在闲置。 行为似乎是好的,因为一个进程一次只做一件事,但第三个进程在做什么(在下面的图像中被看作是中间那个)? 我用过的iotop命令是: iotop -p22250 -p22251 -p22252 以下是iotop命令输出的屏幕截图: 我问这个原因,我使用rsync很多,并希望了解它的行为,以获得长期利益。 我甚至读过这本手册,但没有提到分叉。

如何解决与rsync相对大的文件损坏的数据包错误?

尝试使用rsync命令更新服务器上的文件: rsync -ravq -e "ssh -o ConnectTimeout=2 -o ServerAliveInterval=2 -ServerAliveCountMax=2" –delete ./local_dir user@$SERVER:/dest_dir corrupt packet错误不断抛出,具体为: rsync: writefd_unbuffered failed to write 4092 bytes to socket [sender]: Broken pipe (32) rsync: connection unexpectedly closed (11337 bytes received so far) [sender] rsync error: unexplained error (code 255) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [sender=3.0.9] 这可能与ssh超时有关,因为它似乎与大(r)文件发生。 另外,我一直使用WinSCP获取超时。 这只发生在我身上。 我使用这台服务器的几个人没有同样的问题。 使用Windows 7中的Cygwinterminal的rsync与Centos 6.3服务器。 我不确定其他信息可能有用或如何获得它。 […]

告诉Rsync在传输过程中跳过当前文件?

有没有办法告诉rsync跳过当前的文件,而同步正在进行,也许通过发送一个特定的信号? 我已经知道基于模式的忽略,但这有时候对我来说很方便。

通过SSH的Rsync与双方的根访问

我有一个较旧的Ubuntu的服务器,一个新的debian服务器,我正在从旧的数据迁移到新的。 我想使用rsync传输数据,使最终迁移比等效的tar / scp / untar过程更容易和更快。 作为一个例子,我想同步一个主文件夹到新的服务器。 这需要在两端进行根访问,因为源端的所有文件都不是世界可读的,并且目的地必须以正确的权限写入/ home。 我无法弄清楚如何给双方的rsync根访问。 我已经看到了一些相关的问题,但是没有一个与我正在做的事情完全一致。 我有sudo设置和在两个服务器上工作。

Complex包含/不包含rsync

我正在努力解决rsyncfilter语法来执行复杂的包含/排除,并试图实现以下内容: Include / Exclude /home Include /home/user1/* Include /home/user2/subdir/* 我已经在filter语法上尝试了许多变体,尽pipe多次阅读手册页,但我无法得到这种效果。 Rsyncfilter似乎是非常强大的,我发现很难相信他们不能处理这种常见的情况。

无法使rsync在守护进程ssh模式下工作

我试图设置rsync来每天从服务器复制数据。 为了使系统尽可能受限制,我试图使用手册页中描述的模式:“通过远程 – shell连接使用RSYNC-DAEMONfunction” 所以我把一个名为rsyncd.conf的文件放在根目录下: [root] path = / read only = true 并试图复制/ etc / passwd作为testing: rsync -vv -e ssh myserver::root/etc/passwd . 但是我得到以下几点: opening connection using: ssh myserver rsync –server –daemon . rsync: connection unexpectedly closed (0 bytes received so far) [receiver] rsync error: error in rsync protocol data stream (code 12) at io.c(635) […]