Linux 为什么在复制大量小文件时,NTFS文件系统比EXT3文件系统慢?
我已运行以下测试,我已使用此批创建了一个包含15000个400字节文件的文件夹:Linux 为什么在复制大量小文件时,NTFS文件系统比EXT3文件系统慢?,linux,windows,filesystems,ntfs,ext3,Linux,Windows,Filesystems,Ntfs,Ext3,我已运行以下测试,我已使用此批创建了一个包含15000个400字节文件的文件夹: @ECHO off SET times=15000 FOR /L %%i IN (1,1,%times%) DO ( fsutil file createnew filename%%i.txt 400 ) 然后,我使用以下命令在Windows计算机上复制它: robocopy LargeNumberOfFiles\ LargeNumberOfFiles2\ 完成后,我可以看到传输速率为915810字节
@ECHO off
SET times=15000
FOR /L %%i IN (1,1,%times%) DO (
fsutil file createnew filename%%i.txt 400
)
然后,我使用以下命令在Windows计算机上复制它:
robocopy LargeNumberOfFiles\ LargeNumberOfFiles2\
完成后,我可以看到传输速率为915810字节/秒,这小于1 MB/s。我花了几秒钟的时间来拷贝7兆字节。请注意,这是非常慢的
我也尝试过同样的方法,一个文件夹的单个文件大小为50MB,传输速率为1219512195字节/秒。(是的GB/s)瞬时
为什么在windows文件系统上复制大量文件会花费这么多时间-资源?
请注意,我曾尝试在linux系统上执行相同的操作,该系统在具有ext3文件系统的虚拟机(vmware player)中的同一台计算机上运行
我使用cp命令,复制是即时的
还请注意以下事项:
- 没有杀毒软件
- 我在多台windows计算机(始终是ntfs)上测试过这种行为,我总能得到类似的结果(传输速率低于1MB/s,平均7-8秒,拷贝7 MB字节)
- 我在多个LinuxExt3系统上进行了测试,拷贝量始终是即时的(15000个文件,400字节)
- 问题在于理解是什么使得windows文件系统复制大量文件的速度比linux文件系统慢李>