标签: rsync

使用 rsync 和 nc 作为传输层

默认情况下,rsync 使用 ssh 作为传输层。不幸的是,对于快速的本地网络,ssh 非常慢。是否可以将 rsync 与 netcat / nc 一起使用?

我做了一些实验,但它对我不起作用。我想消除 ssh,因为它是瓶颈。

当然,我想在 Linux 上使用它。

ssh rsync netcat

5
推荐指数
1
解决办法
4777
查看次数

复制文件夹并保留其修改日期

我想复制几个文件夹并出于历史原因保留其修改日期,而不是更改我习惯的排序。我尝试使用带标志的 rsync 来保留时间和查找器“准确粘贴项目”。

对于文件来说,这工作正常,但似乎 macOS 或查找器或其他任何东西仍然会修改文件夹的“修改时间”日期。

有没有办法复制我的文件夹并保留修改日期?

编辑:添加了我已经使用 rsync 的说明--times --archive

finder rsync copy-paste

5
推荐指数
1
解决办法
1727
查看次数

如果 X 时间段内不再位于源上,rsync 是否可以删除目标上的文件?

我目前设法在 ubuntu 服务器 18.04 上获得一个简单的 rsync 设置,它执行以下操作:

  • 将所有目录结构从 server-1 上的 /data 复制到 server-2 上的 /data
  • 根本不删除任何内容

我想让它做的是

  • 将所有目录结构从 server-1 上的 /data 复制到 server-2 上的 /data
  • 如果服务器 1 上的文件\文件夹已丢失 90 天,则删除服务器 2 上的文件\文件夹

我无法找到一种方法来做到这一点,如果在源处丢失,只能在目的地立即删除。

当前 rsync 命令是: rsync -e 'ssh -p 22' -apv --info=progress2 /data/* server-2:/data

当我进行备份时,基本上是在 rsync 选项中寻找保留期。

backup rsync ubuntu

5
推荐指数
1
解决办法
7737
查看次数

如何在 Rsync 中将输出输出到 STDOUT,同时仅将更改记录到“--log-file”,就像 Rsync 2.6.9 对 Rsync 3.x 所做的那样

作为 macOS 的长期用户,我使用过内置/捆绑的 rsync 二进制文件,但由于各种许可原因,该二进制文件一直停留在 2.6.9 版本。

\n

我最近决定开始通过 Homebrew 使用现代 rsync。一切工作正常,但我无法弄清楚的一件事是如何在同步期间获得详细输出,但保存的日志仅显示更新/更改的文件。

\n

这是 rsync 2.6.9 的默认行为,我不知道如何在 rsync 3.x 中做同样的事情。这是一个例子:

\n
rsync -avv --progress --stats --log-file=rsync.log /source/ /dest/\n
Run Code Online (Sandbox Code Playgroud)\n

在 rsync 2.6.9 中,由于 double vv,同步期间的 STDOUT 很详细,并显示所有内容,但该rsync.log文件仅显示哪些文件被更新/更改/删除。但我不知道如何在 rsync 3.2.3 中实现同样的事情。

\n

我广泛地查看了手册页,但我不清楚如何更改它。我看到很多关于使用该--itemize-changes开关的帖子,但这似乎会影响 STDOUT 和日志。

\n

我也看到了--log-file-format开关,但这似乎只影响日志每一行的格式,而不影响实际吐出的内容。

\n

所以我本质上想做的是查看详细的 STDOUT,然后抑制uptodate日志中的所有消息。这可以在现代 3.x rsync 中完成吗?

\n

rsync logging macos

5
推荐指数
0
解决办法
627
查看次数

为什么 rsync 在 rsync 到 USB 闪存驱动器与硬盘之间提供不同的输出?

当没有文件可供 rsync 传输时,为什么 rsync 会给出不同的输出,即 ( xfr#0) 从硬盘到硬盘的 rsync 与从 USB 闪存驱动器到硬盘的 rsync?

使用:

  • Ubuntu 20.04.4 LTS(焦点窝)。
  • rsync 版本 3.2.3 协议版本 31。

所有目录都是同步的,都是最新的。因此,没有文件可供 rsync 传输,这意味着xfr#0第二次运行 rsync 时 ( )。

示例1脚本:

src1='/media/u3/d_HDD931GB/TemP'  
dest='/media/u3/s_HDD931GB/1/TemP'   
tput setaf 2  ; echo "$src1   $dest" ;   
tput setaf 1  ; test ! -d "$src1" && echo "ErrorS" ; test ! -d "$dest" && echo "ErrorD" ; tput setaf 2 ;  
time rsync -ah --delete-before --info=progress2 "$src1/" "$dest" --out-format='%t %i %C %b %n %l …
Run Code Online (Sandbox Code Playgroud)

linux usb backup hard-drive rsync

5
推荐指数
1
解决办法
976
查看次数

使用 pi 创建备份过程,我应该使用推送还是拉取?

我有一个树莓派 4,想用它作为家里的备份服务器。现在我不确定如何执行此操作,我有一个连接到 pi 的加密磁盘,我想使用 SSH 和 rsync 进行增量备份。但是我应该将文件从我的笔记本电脑推送到 pi 还是 pi 应该从我的笔记本电脑中提取文件?

1. 拉动

a) +笔记本电脑没有备份的写权限,这样更安全

b) - pi 和加密但已安装的磁盘始终在家中,有人可以通过物理访问来使用它来访问数据吗?

c) -与 1.b 类似,pi 需要完全访问我的笔记本电脑,它可能会损坏我笔记本电脑上的某些东西,我会尝试使用 ssh 强制命令,这样它只能读取而不能写入

2. 推

a) +只有我的笔记本电脑可以完全控制,磁盘密钥和 ssh 连接仅在我的笔记本电脑上

b) -我可能会损坏备份,勒索软件或其他任何东西都可能会损坏我的备份。我不确定是否可以使用 ssh 强制命令来阻止这种情况?!

linux backup ssh rsync raspberry-pi

5
推荐指数
1
解决办法
450
查看次数

rsync 作为后台进程?

我一直在使用 rsync 在我的两台服务器之间同步一堆文件。我设置了一个每分钟运行一次 rsync 的 cron 作业。但是,我更希望它始终运行,以便文件在更改时同步。什么是最好的方法来做到这一点?

谢谢。

linux rsync

4
推荐指数
1
解决办法
5457
查看次数

如何将 Linux 命令输出打印到文件?

我正在创建一个脚本来在两个系统之间同步我的重要文档。我希望我的脚本为最后一个操作生成一个日志文件。你能建议我一种方法来实现这一点。

问题:如果我使用 -v 标志执行 rsync 命令,它将在控制台上打印大量消息。有什么办法。那么,我可以将这些日志重定向到一个文件吗?

linux rsync logging

4
推荐指数
2
解决办法
2万
查看次数

rsync 切换到只比较时间戳

有没有办法rsync只比较文件的时间戳,而忽略它们的内容?这包括忽略文件大小。只是时间戳。除了时间戳什么都没有。

rsync

4
推荐指数
1
解决办法
4972
查看次数

rsync 未压缩的文本数据或 gzip 压缩的相同数据是否更有效?

Rsync 仅复制文件的更改部分。因此,如果我有一个大数据转储,例如文本格式的 SQL 数据库,并且我想使用尽可能少的带宽将其复制到我的本地计算机,我该怎么办?

我可以将其保留为未压缩的文本并使用带有 -z 开关的 rsync,或者我可以在服务器上对其进行 gzip 并 rsync 对 gzip 文件进行同步。

我怀疑源 SQL 文本文件中的微小更改可能会导致压缩 gzip 版本中的数据出现更大的混乱,因此随着更多文件的更改,rsync 将不得不做更多的工作。

此外,由于 -z 开关无论如何都在执行压缩,因此这可能是最有效的。但是,我不确定。

rsync gzip

4
推荐指数
1
解决办法
1257
查看次数

标签 统计

rsync ×10

linux ×4

backup ×3

logging ×2

ssh ×2

copy-paste ×1

finder ×1

gzip ×1

hard-drive ×1

macos ×1

netcat ×1

raspberry-pi ×1

ubuntu ×1

usb ×1