Questions tagged «rsync»

Rsync是一种快速且用途广泛的文件复制工具。它可以通过任何远程Shell在本地复制到另一个主机,或从另一个远程复制到另一个rsync守护程序。

1
如何防止rsync用目标目录层次结构中的新目录替换符号链接?
我正在使用rsync(1)在源区域和目标区域(目标目录层次结构包含符号链接)之间同步文件。 如果源目录的名称和相对路径与目标区域中的符号链接相同,则rsync 会将符号链接替换为复制的源目录及其所有内容。我希望rsync相反地保持符号链接不变,并且只有在符号链接为真实目录的情况下,才复制要被复制的文件。 我目前正在使用-Cvrtprsync选项。我知道该--links选项,但这似乎仅与源区域中的符号链接有关。 有没有办法获得我正在寻找的rsync行为?

6
具有进度条但不如rsync重的Unix复制命令
我需要复制很多文件。通常,我使用rsync是因为我将-aP选项传递给了rsync,然后我可以看到(a)还有多少文件要处理,以及(b)每个单独文件有多少被复制。 但是,rsync还会对校验和做很多事情,以验证是否已复制文件。但是我现在真的不需要。但通常cp不包括上述剩余文件数,这非常有帮助。 是否有类似的东西cp包括剩余文件数量的进度,但是还不如rsync?
14 rsync  copy  cp 

5
从rsync获取已传输文件的列表?
我当前正在使用rsync一个脚本,该脚本将PHP应用程序从登台部署到生产服务器。方法如下: rsync -rzai --progress --stats --ignore-times --checksum /tmp/app_export/ root@app.com:/var/www/html/app/ 当前正在输出正在比较的每个文件的列表(项目中的每个文件),但是我希望它仅输出已修改的文件,因此我可以运行一个--dry-run选项来检查每个部署是否仅更新所需的文件。 注意:到目前为止,我能做的最好的就是grep fcst结果,但是我正在寻找一个rsync可以确定的选项,但是我在手册页中找不到它。 提前致谢!

5
RSYNC如何执行增量备份
如何rsync知道哪些文件已更改,哪些未更改?它是否将数据记录在文件中的任何位置? 因为我要进行增量备份,但首先它将传输所有文件。 所以我的主要问题是:是否通过FTP上传初始文件,而不是通过rsync。请问rsync仍然跳过那些已存在的文件,否则将上载在第一次运行的一切。
14 backup  rsync  sftp 

2
使用rsync进行复杂的包含/排除
我正在尝试制定rsync过滤器语法以执行复杂的包含/排除,并尝试实现以下目标: Include / Exclude /home Include /home/user1/* Include /home/user2/subdir/* 我在过滤器语法上尝试了多种变体,尽管阅读了很多手册页,但仍无法获得这种效果。Rsync过滤器似乎非常强大,我很难相信它们无法处理这种常见情况。
14 rsync 



5
通过Rsync加密的远程备份?
我在家里运行一台小型的CentOS服务器以进行其他备份等。我镇另一侧的朋友也在他的家里运行一台小型的CentOS服务器,用于类似目的。我们一直在考虑使用对方服务器进行远程/异地备份的想法。 基本上,我们每个人都会购买一个外部硬盘驱动器,以存储在彼此的家中,并连接到彼此的服务器上。然后,我们将分别设置预定的rsync,以将适当的数据从一台服务器推送到另一台服务器上的外部硬盘驱动器。在大多数情况下,非常简单。 但是,重要的一件事(至少对我而言)是数据加密。我想将数据存储在朋友服务器上的外部硬盘上。但是我不希望我的朋友(或访问我朋友服务器的任何人)能够读取外部硬盘上的内容。 最好的方法是什么?您是否可以使用rsync将数据发送到加密的硬盘驱动器,并在将其到达服务器后以某种方式传递密码以及用于写入密码的数据?

9
支持长文件名的Windows rsync,还是一个不错的选择?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我目前在Linux主机上rsync,将内容从Windows复制到我的Linux机器上。但是我不能复制长名称的文件。 我已经尝试了DeltaCopy,cwrsync和cygwin。据我发现,所有这些工具都拒绝在文件长度变长时复制文件,这似乎是255个字符左右。 此问题在此处的cwrsync论坛上得到了解决,并且它可能在将来的任何时候cygwin 1.7出现并支持UTF8时都会得到修复。甚至有一个测试版本在这里。 在生产系统上使用测试版本时,我不太舒服。我希望有人知道另一个rsync选项。 作为rsync的替代方案,您是否知道我可以从Windows主机复制Linux上的目录结构的另一种工具,而该目录结构不会出现长文件或名称异常的文件的问题?重要的一点是,我需要一个可以轻松通过SSH隧道运行的工具。有些系统没有防火墙,我相信SSH是允许使用的隧道。

2
使用rsync仅删除无关的文件
比较两个目录结构并删除目标位置中无关的文件和目录的最佳方法是什么? 我有一个正在开发的小型网络照相馆应用程序。用户使用FTP添加和删除图像。我编写的网络画廊软件可以即时创建新的缩略图,但不能处理删除操作。我想做的是安排一个命令/ bash脚本以预定的时间间隔进行处理。 原始图像/home/gallery/images/使用子目录存储在相册中并组织在相册中。缩略图/home/gallery/thumbs/使用与图像目录相同的目录结构和文件名缓存在中。 我尝试使用以下方法来实现此目的: rsync -r --delete --ignore-existing /home/gallery/images /home/gallery/thumbs 如果所有缩略图都已被缓存,这将很好地工作,但是不能保证会发生这种情况,当发生这种情况时,thumb目录已复制了原始的全尺寸图像。 我怎样才能最好地实现自己的目标?
13 linux  bash  rsync 

5
大型目录的rsync更快,没有更改
我们使用rsync备份服务器。 不幸的是,某些服务器的网络速度很慢。 rsync最多需要五分钟才能检测到,巨大的目录中没有任何变化。这些巨大的目录树包含许多小文件(约80k文件)。 我猜想rsync客户端会为每个80k文件发送数据。 由于网络速度较慢,我希望避免发送有关每个文件的80k次信息。 有没有办法告诉rsync进行子目录树的哈希和? 这样,rsync客户端将只为一个巨大的目录树发送几个字节。 更新资料 到目前为止,我的策略是使用rsync。但是,如果其他工具更适合此处,我可以进行切换。(服务器和客户端)都在我的控制之下。 更新2 一棵目录树中有8万个文件。每个目录的文件或子目录数量均不超过2k 更新3 有关网络慢速的详细信息: time ssh einswp 'cd attachments/200 && ls -lLR' >/tmp/list real 0m2.645s tmp /列表文件的大小:2MByte time scp einswp:/tmp/list tmp/ real 0m2.821s 结论:scp具有相同的速度(不足为奇) time scp einswp:tmp/100MB tmp/ real 1m24.049s 速度:1.2MB / s

4
Rsync -avzHP遵循硬链接,而不是将其复制为硬链接
我使用rsnapshot为我的“工作”共享创建每小时/每天/每周/每月的备份。现在,我尝试使用rsync将整个备份目录复制到外部驱动器上。 我在屏幕会话中使用了此命令/参数(是的,rsync-exclude.txt位于运行命令的目录中) rsync -avzHP --exclude-from 'rsync-exclude.txt' /share/backup/ /share/eSATADisk1/backup/; 整个程序都在QNAP TS-439上运行,内部驱动器是单个磁盘(无RAID)格式的EXT4,外部驱动器是EXT3格式。 发生的是:Rsync会跟踪每个硬链接并复制实际文件,而不是在外部驱动器上重新创建更新的硬链接。我不立即意识到这一点,因此外置驱动器最终被同一文件的xxx副本破坏了。 我要实现的是:将rsnapshot生成的整个文件结构复制到外部驱动器,同时保留硬链接以节省空间。注意:这不一定必须使用rsync完成。 感谢您的想法和时间。多谢您的帮助,辛苦了。 更新:我了解到,rsnapshot没有使用符号链接,而是在使用硬链接,所以我现在使用-H选项,该选项应将Rsnapshot的硬链接结构保留到多个目标位置(或维护硬链接结构),但仍然无法正常工作...我在这里想念什么? 更新2:我在这里找到了关于此主题的另一种意见/陈述:rsync与--hard-links冻结了 Steven Monday建议不要尝试rsync包含硬链接的大文件结构,因为它会占用大量内存,这对于rsync是一项艰巨的任务。因此,可能更好的解决方案是将我要备份的数据结构制成.img。你怎么看?

1
为什么必须在两边都安装rsync才能起作用?
这可能是一个愚蠢的问题,但是我想保持我的一些服务器干净,并且不希望安装任何其他软件。 但是我一直以为rsync会通过SSH复制数据,而在远端不需要rsync吗? /usr/bin/rsync -a --delete --numeric-ids --relative --delete-excluded --rsh=/usr/bin/ssh root@server01:/etc /.snapshot/hourly.0/server01 rsync: command not found
13 ssh  rsync 

2
如何使用rsync(chown chmod)设置目标权限
我正在尝试从安装点到本地文件夹执行本地rsync。我需要将所有者,组和权限设置为特定设置。这是我正在使用的: rsync -rtlv --chown=process:sambausers --chmod=D770,F770 /mnt/owncloud_mnt/Engineering/ /Drive_D/docs/Engineering_test 我最终在目录和文件上都获得了760的权限,并在所有权上获得了root:root(rsync作为root运行)。 我究竟做错了什么? TIA
13 linux  rsync  fedora 

4
人们为什么不只使用rsync备份vmware guest虚拟机?
如果运行的是现代vmware ESXi系统,则可以通过SSH将静态链接的rsync二进制文件和rsync文件放入任何目标位置。 我试图了解为什么大多数(全部?)vmware guest虚拟机备份不是通过这种方式完成的。 如果VM正在运行,则可以简单地使用'vim-cmd vmsvc / snapshot.create'创建快照,然后将该快照重新同步到远程主机。(甚至可以选择“静默”快照) 或者,如果您想要更强大的备份,则可以正常停止VM并通过vmdk文件进行rsync。 所以...似乎我是一个简单的Shell脚本,可以使用普通的旧rsync轻松,轻松地完成所有我想做的备份。 我在这里想念什么?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.