Rsync - 目标较小,即使文件相同

Rsync - destination is smaller, even though files are the same

我 运行 通过 ssh 在本地文件夹和远程文件夹之间进行常规 rsync。当我看到远程(和目标)文件夹的大小不同时,我感到很困惑,它更小。我首先怀疑排除文件,但事实并非如此。相反,我发现了以下内容。

本地文件夹(我正在同步的文件夹的子文件夹)中的大小如下所示:

112K    .
48K ./workspace.xml
12K ./vcs.xml
12K ./preferred-vcs.xml
12K ./pm-client.iml
12K ./modules.xml
12K ./misc.xml

远程的,但是,像这样:

64K .
40K ./workspace.xml
4,0K    ./vcs.xml
4,0K    ./preferred-vcs.xml
4,0K    ./pm-client.iml
4,0K    ./modules.xml
4,0K    ./misc.xml

然而,当我检查文件内容时,它们看起来完全一样。我在目标文件夹中经常看到这种情况,最终导致文件夹大小差异很大。

我 运行 的 rsync 看起来像这样:

rsync -aPEh -e ssh --delete --delete-excluded --stats --exclude-from=<some-ignorelist> /source/folder/ /target/backup/folder

这可能是什么原因?

duls 报告的大小不同:du 报告文件系统上实际分配的 space 的数量,而 ls 报告逻辑文件大小。

several questions on various 个关于此的 StackExchange 站点。

为什么 du 在您的两台机器上报告不同的大小?因为它们要么使用不同的文件系统,要么配置不同。这一切都归结为文件系统上使用的块大小,这就是 du 报告的内容。