Linux `du-sh`在不同的机器上为同一文件夹生成不同的结果
我使用rsync从一台机器同步到另一台机器(因此我认为它应该是包含同一组文件的同一文件夹——而且它只包含文件) 当我在原始机器上执行Linux `du-sh`在不同的机器上为同一文件夹生成不同的结果,linux,ubuntu,suse,Linux,Ubuntu,Suse,我使用rsync从一台机器同步到另一台机器(因此我认为它应该是包含同一组文件的同一文件夹——而且它只包含文件) 当我在原始机器上执行du-sh时,它会产生: 4.0M . 3.5M . 但在我的电脑上,它产生: 4.0M . 3.5M . 当我在两台机器上的文件夹中执行ls-lh时,每个文件的结果都是相同的 我问了一些人,他们告诉我使用du-bc,这次结果是一样的 原始服务器运行的是“SUSE Linux Enterprise server 11 SP2”,我的计算机运行
du-sh
时,它会产生:
4.0M .
3.5M .
但在我的电脑上,它产生:
4.0M .
3.5M .
当我在两台机器上的文件夹中执行ls-lh
时,每个文件的结果都是相同的
我问了一些人,他们告诉我使用du-bc
,这次结果是一样的
原始服务器运行的是“SUSE Linux Enterprise server 11 SP2”,我的计算机运行的是Ubuntu 12.04
因此,在
du-sh
的实现中似乎存在一些差异?或者为什么同一组文件不同?du计算磁盘使用率,而不是文件大小
文件系统为文件分配存储的方式不同,可能会导致同一组文件的磁盘使用情况不同
磁盘使用率可能不同的一些可能原因,以下不是详尽的列表:
我投票结束这个问题,因为它与编程无关。试试@mustaccio,谢谢。我现在明白了。我将在unix stackexchange中询问,如果我使用
du-bc
(我认为这是计算二进制大小),那么这两个文件系统会产生相同的结果。大约5个,没有硬链接。但是谢谢你的回答(我对文件系统和相关知识不太熟悉。我稍后会用谷歌搜索并检查我的两台机器。@JunchaoGu:-b统计文件的外观大小,即可以从文件中读取的数据量。你应该检查man du
,它解释了你需要知道的关于那里的标志的一切。