目前我有两个目录 A/ 和 B/,除了时间戳之外,它们在各方面都相同。因此,如果我运行命令:
rsync --dry-run -crvv A/ B/
Run Code Online (Sandbox Code Playgroud)
然后所有文件都标记为“最新”,而命令:
rsync --dry-run -rvv A/ B/
Run Code Online (Sandbox Code Playgroud)
显示所有文件都将从 A/ 复制到 B/。
我的问题是:鉴于我知道文件是相同的(就内容而言),那么有没有办法(通过 rsync 或其他方式)将 B/ 中文件的时间戳设置为与中文件的时间戳相同A/,而不将所有文件从 A/ 复制到 B/ ?
谢谢
我想中断 debian 挤压软件raid 上正在运行的重新同步操作。(这是常规的计划比较重新同步。在这种情况下,raid 阵列仍然是干净的。不要将其与磁盘发生故障并被替换后的重建混淆。)
如何在运行时停止此计划的重新同步操作?另一个突袭阵列是“重新同步挂起”,因为它们都在同一天(周日晚上)一个接一个地接受检查。我想彻底停止这个周日晚上的重新同步。
[编辑:sudo kill -9 1010不停止,1010 是 md2_resync 进程的 PID]
我还想知道如何控制重新同步之间的间隔和直到下一次的剩余时间。
[Edit2:我现在所做的是使重新同步变得非常慢,所以它不再打扰:
sudo sysctl -w dev.raid.speed_limit_max=1000
Run Code Online (Sandbox Code Playgroud)
取自http://www.cyberciti.biz/tips/linux-raid-increase-resync-rebuild-speed.html
在夜间,我会将其设置回较高的值,以便重新同步可以终止。
这种解决方法适用于大多数情况,但知道我问的是否可行会很有趣。例如,似乎不可能增长数组,而它正在重新同步或重新同步“待定”]
我有一个免费的保管箱帐户 (2GB),我想知道大文件的版本控制是如何工作的。
我有我所有的网站文件的完整备份@刚刚超过 1GB。首次上传 1GB 后,每次同步时,dropbox 都会计算出文件的增量,还是必须再次上传整个文件以对其进行版本控制?
始终拥有大文件的最新版本会很酷,但我不想每次都上传 1GB 的带宽。
这可能吗?
谢谢,
我正在编写一个 Linux shell 脚本来将本地目录复制到远程服务器(删除任何现有文件)。
本地服务器: ftp和lftp命令可用,没有 ncftp或任何图形工具。
远程服务器:只能通过 FTP 访问。没有 rsync、SSH 或 FXP。
我正在考虑列出本地和远程文件以生成 lftp 脚本然后运行它。有没有更好的办法?
注意:仅上传修改过的文件将是一个加分项,但不是必需的。
在我工作的一家公司,我们有一种叫做“播放列表”的东西,它是每个约 100-300 字节的小文件。他们大约有一百万。其中每小时大约有 100,000 次更换。这些播放列表需要每小时上传到不同大陆的 10 个其他远程服务器,理想情况下需要在 2 分钟内快速上传。在 master 上删除的文件也会在所有副本上删除,这一点非常重要。我们目前使用 Linux 作为我们的基础设施。
我正在考虑尝试使用 -W 选项进行 rsync 复制整个文件而不比较内容。我还没有尝试过,但也许对 rsync 有更多经验的人可以告诉我这是否是一个可行的选择?
还有哪些值得考虑的选择?
更新:我选择了 lsyncd 选项作为答案,但这只是因为它是最受欢迎的。其他建议的替代方案也以它们自己的方式有效。
我想将内部硬盘驱动器的目录同步到外部硬盘驱动器。
当我在内部硬盘驱动器上写入或修改文件时,相同的文件将自动复制到外部硬盘驱动器......再见备份;)
这类似于带有外部硬盘驱动器的 RAID。
这可能吗?
是否可以使用 rsync 仅向一个方向复制文件?
例如,假设我们有:
left/a.txt
right/a.txt
其中文件最初是相同的。
如果然后修改right/a.txt,则:
rsync -avv left/ right/
将复制right/a.txt到left/a.txt.
是否有可能限制rsync将仅复制left/到right/(即防止它从复制right/到left/)?
我有以下树
# upper letters = directory
# lower letters = files
A
|-- B
|-- C
|-- D
|-- e <= file
|-- F
|-- G
Run Code Online (Sandbox Code Playgroud)
我需要将此树复制到另一个目的地,递归地忽略所有空目录。所以目的地最终看起来像:
C
|-- e
Run Code Online (Sandbox Code Playgroud)
你会如何用 unix、rsync 等来做到这一点?
在深入探讨如何在不同的 Linux 机器上同步 UID/GID 之前,我想知道实际上有什么好处?
我知道这使文件同步相对容易(因为所有权是“自然”保留的)。然而,这也可以根据传输服务以其他方式实现。
还有什么可以从一致的 UID/GID 中受益的吗?
我与一个团队一起管理 500 到 600 台租用的 Windows 7 计算机,用于年度会议。我们有大量数据需要同步到这些计算机,最多 1 TiB。计算机被分成多个房间并通过非管理型千兆交换机连接。在我们将基本映像发送给租赁公司进行复制之前,我们会提前准备好这些计算机,并安装和配置 Windows,以及我们可用的任何文件。每年,我们都会让演示者在现场处理多达演出数据,这些数据需要推送到他们将要演示的房间。有时他们只有几个小文件,例如幻灯片 PDF,但可以有时要大得多> 5 GiB。
我们当前推送这些文件的策略是使用批处理脚本和 RoboCopy。对于大推送,我们实际上是使用 BitTorrent 客户端生成一个 torrent 文件,然后我们使用批处理 RoboCopy 将 torrent 推送到远程机器上的文件夹中,该文件夹由已安装的 BT 客户端监控。很多时候,这些数据需要在很小的时间窗口内立即推送。我们在控制室里有几台机器,它们与我们用于这些推送的地板上的机器相同。
我们偶尔需要在远程机器上执行一个程序,我们目前使用批处理和 PSexec 来处理这个任务。
我们希望能够以“对不起,你自己的错”来回应这些最后一分钟的推送,但它不会发生。BT 方法让我们有更快的响应时间,但是当有多个作业被推送时,整个批处理过程会变得混乱。我们将 Enterprise Ghost 用于其他流程,它在如此大规模的情况下效果不佳,而且对于像这样一年一次的任务来说,它确实非常昂贵。
编辑:地板上的远程机器运行 Windows 有一个硬性要求。控制机器没有硬性操作系统要求。由于上游路由器的复杂性,我真的很想远离多播。多播或 BitTorrent 是更好的方法吗?是否有另一种可能更好的协议?
synchronization ×10
rsync ×4
linux ×3
backup ×1
bittorrent ×1
copy ×1
directory ×1
dropbox ×1
files ×1
filesystems ×1
ftp ×1
mdadm ×1
multicast ×1
optimization ×1
raid ×1
recursive ×1
timestamp ×1
uid ×1
unix ×1
upload ×1
versioning ×1