Articles of rsync

RSync增量备份,未更改的备份文件。 文件访问时间是否会导致重新备份?

我使用RSync通过SSH备份我的LAMP服务器。 目前,它每小时增量计划。 从14GB的完整备份,它每小时进一步备份15MB。 看看它的备份文件,我认为这些都没有改变。 文件最后访问时间属性是指文件在技术上已经改变,并将被重新备份?

通过SSH使用Unison / rsync来同步需要完整文件系统访问的站点,但是禁用了rootlogin

假设两个站点A和B在两端都有文件服务器。 /storage的内容应该在站点之间同步,保留所有权和权限。 没有包含组/storage所有文件的所有组。 如果运行Unison或rsync pid = 0,则执行同步操作是微不足道的。 但是,SSH将被用作传输,显而易见的原因是SSH根login已被禁用。 我怎样才能保持A和B与在这种情况下保存的所有权限同步。 我能想到的两种方法: 运行允许rootlogin的辅助SSH,可能只能通过A和B之间的VPN进行连接。 添加一个sshdconfiguration强制执行的特殊同步用户 SUID包装Unison或rsync( 危险得到正确 )。 sudo包装到Unison或rsync 给出的问题的答案远程使用root over ssh作为一致build议通过SSH启用无密码的pubkey rootlogin – 我不太喜欢那个解决scheme。 任何其他的想法?

使用rsync备份进行exception报告?

我每隔4小时在cron中运行rsync。 这适用于备份,但每天会生成六条消息,以便每个备份成功。 我知道我可以把输出到/ dev / null根本就不会得到任何电子邮件,但我真正想要的是exception报告。 换句话说,如果rsync失败或者正常完成任何问题,只发送一封电子邮件给root。 有没有办法做到这一点,而不是每4个小时也发送电子邮件到根? 谢谢!

Rsync通过ssh文件夹深度限制?

我正在进行服务器迁移,并遇到以下问题: 我正在运行rsync来迁移所有的数据,但由于某种原因有一个文件夹深度限制…这是通过rsync通过SSH命令完成: rsync -raz –verbose –update –delete –exclude-from 'rsync-exclude.txt' /home 192.168.70.50:/ 70.50是新服务器,我正在旧服务器上运行命令。 文件夹结构非常深,最多可达20个文件夹深度。 所以,大部分文件和文件夹都被复制过来,但是从文件夹深度10开始并不是。 如果我指定更深的文件夹 rsync -raz –verbose –update –delete –exclude-from 'rsync-exclude.txt'/home/user/blablabla/domain/web to 192.168.70.50:/home/user/blablabla/domain 它开始recursion地复制剩余的文件夹… 任何人可能有这个问题的解决办法?

Dropbear等同于使用ssh proxy命令的rsync

我试图猜测相当于这个普通的rsync命令dropbear(使用ssh与代理) rsync -avz –delete -e "ssh -o 'ProxyCommand ssh user@proxyhost exec nc %h %p 2>/dev/null'" /tmp/a-folder user@host:/tmp 根据我的search,这是所有关于dropbear ssh的-J选项,但我无法设法得到它的工作。 什么是实现这个好方法? 附加信息:Dropbear用于客户端。 Proxyhost是一个普通的Debian机器。 主机是Synology NAS。

Rsync – 设置rsync用户及其权限

我将在两台Web服务器之间设置rsync。 我的目标是在secoundary备份来自主服务器的数据,以防主服务器崩溃。 我的问题涉及在主服务器上设置用于rsync用户帐户的目的。 出于显而易见的原因,我不想在这里使用我的“root”用户帐户。 因此,我的目标是build立另一个只用于rsync目的的帐户。 据我所知这个用户将需要读取权限,我将需要传输的所有文件(Apacheconfiguration,用户的Linux文件,万维网数据)。 如何最好地设置这样的权限? 我应该授予rsync用户root权限还是有更安全的方式来创build这样的备份用户?

完成rsync -Sap传输后,df输出中的可用磁盘空间数目不同

我做了“rsync -ap -numeric-id -delete-during / mnt / RAIDVault / / mnt / RAIDVault-BACKUP /”,意图使两个存储单元同步(具有相同的内容),但是以不同数量的空闲磁盘空间上的两个: /dev/md1 2.0T 2.0T 81G 96% /mnt/RAIDVault /dev/md0 2.0T 2.0T 79G 97% /mnt/RAIDVault-BACKUP /dev/md1 1951405544 1873160540 78245004 96% /mnt/RAIDVault /dev/md0 1951405544 1874906476 76499068 97% /mnt/RAIDVault-BACKUP 我在这里摸不着头脑,因为我不知道为什么会发生这种情况,也不知道从哪里开始排除故障。 没有错误,rsync完成了一次传输就好了,一切看起来都很好,“uptodate”。 然而不知何故/ dev / md0在应该是“A镜像到B镜像”传输之后less了2千兆字节。 df输出是用“df –sync”生成的。 我认为这是一个可靠的数字。 df永远不会说谎,是吗? / dev / md0和/ dev / md1之间的一个重要的区别是即使两者都是raid1软件types的raid […]

使用磁盘映像文件从dom0备份Xen Guest

我有一个Xen服务器dom0与许多客人安装,并正在努力find一个简单的方法来pipe理从dom0方面的备份。 访客脚本:当然,我可以在每个访客上运行备份脚本,但如果可能的话,希望从pipe理angular度避免这种情况。 理想情况下,我也希望能够自己备份磁盘映像,这些映像和configuration一起可以直接恢复到另一个Xen dom0(如果需要的话),以及某些目录的文件备份。 / var / lib / libvirt / images的rsync:我已经尝试了/ var / lib / libvirt / images /中的图像文件的一个简单的rsyncclosures,但有一个问题 – 磁盘映像试图复制全部可用的大小(它们可以增长到的大小)。 所以这意味着每个图像都试图以250Gb而不是实际的2.5Gb左右(例如ls -l所示的大小,而不是du所示的大小)来复制。 网上有很多解决scheme和脚本,但是这些都看起来很老,似乎是基于LVM设备的磁盘,因此可以在/ dev / virtual / NAME-disk中find,因此可以将它们复制,然后挂载,然后进行备份使用rsync。 这似乎不是我的系统configuration。 如果可能的话,我会看到一些潜在的解决scheme(正如我刚才提到的,我希望备份一个映像文件,并对虚拟机上的某些目录进行文件级备份,或许也是这些的组合)。 收缩图像文件:我可以复制图像文件,然后缩小到它的实际使用的空间? 我可以rsync这个并删除临时文件。 以实际大小复制:以某种方式复制图像文件的实际大小,然后如果需要在另一个dom0上重新创build大小属性? 挂载映像文件:以某种方式直接挂载映像文件? 我发现有一些方法可以将它转换为LVM映像,但不知道这是否是唯一的方法(我对使用映像文件来正常运行域来宾)感到满意。 在此先感谢,希望已经够清楚了。

Rsync可以查看模块并检索文件,但不能发送

我正在设置rsync来同步不同networking中两个分开的服务器(A和B)之间的文件,这两个服务器都运行Solaris 10 OS。 我正在使用 – 守护进程。 现在,我可以从服务器A获得服务器B的模块列表,并将文件从B下载到A.但是,当尝试从A上传文件到B时,进程挂起。 分析由rsync生成的日志文件我可以看到服务器之间的连接已build立,但随后丢失。 日志文件服务器A: root# rsync -rltgD –progress testfile xxxx::test/ building file list … 1 file to consider testfile rsync: writefd_unbuffered failed to write 4 bytes [sender]: Broken pipe (32) rsync: read error: Connection timed out (145) rsync: error: error in rsync protocol data stream (code 12) at io.c(604) [sender=2.6.9] […]

只有当有东西需要更新时,rsync –link-dest才会创build文件夹

首先,我很难理解–update参数的作用。 我认为没有它,它会逻辑更新任何文件的变化,我相信这就是它,为什么–update参数甚至存在? 其次,与我所问的相关,因为我认为这将解决我的问题,但它没有,我有一堆configuration文件,我想更新到不同的文件夹,每次更改时通过一个cronjob运行下面每一小时或每一天都有一个命令,这样我就可以有一些以前的版本,以防出现问题。 问题是这些文件很less改变,但rsync创build另一个硬链接的文件夹,不pipe它是否改变,这有点烦人,因为那么你有相同的文件夹负载,即使他们是一个硬链接,并没有占用空间,它造成了很多混乱。 有没有办法阻止rsync –link-dest这样做? 也就是说,只有在有任何改变时才创build文件夹,否则什么都不做。 看起来像一个非常基本的情况下,所以我会认为有一个简单的方法来做到这一点的参数,但我无法find答案的任何地方。 rsync -azP –delete –stats –update –log-file=/var/log/rsync/apacheconf date +%F_%T .log -e "ssh -i /home/user/.ssh/id_rsa" /etc/apache2/sites-available –link-dest=/mnt/backup/apache2/apache [email protected]:/mnt/backup/apache2/apache date +%F_%T .log