- 主题:copy文件速度跟啥有关?
我在一个服务器上,配置挺高100多个核心,200多G内存。copy 10G的一百多个文件。不用一秒。
在破烂笔记本上从一个分区copy到另一个分区(还是固态硬盘)要半分钟。
虽然性能差别大,但这些性能对copy文件影响这么大?copy文件到底很哪些方面有关?
--
FROM 111.196.132.*
这个我没验证。我用的就是copy命令。这个命令如果没sync到磁盘会返回?我理解这个命令一旦结束,就操作完成了。
如果它没sync到目的地就返回的话,那如果有个脚本,在copy之后紧跟着就读目的地的文件,岂不是会失败?
【 在 RuralHunter 的大作中提到: 】
: 不用1秒肯定没有实际sync到硬盘,还在内存里呢,所以是取决于内存。
--
FROM 111.196.132.*
我用的就是copy命令
【 在 Dazzy 的大作中提到: 】
: 看复制和读取用什么api。
: 复制速度,看是否真实写入。另外,命令开销也很重要。极端的例子,比如每个文件复制都要做一次类似ftp服务器的login,pasv,bin和quit,速度很容易成蜗牛。
: 没sync到物理磁盘也不妨碍系统也从同一缓冲区读取最新内容。
: ...................
--
FROM 111.196.132.*
这是个问题。难道把那个目录的文件都读到内存里了。?
【 在 RuralHunter 的大作中提到: 】
: 不会失败,这就是文件系统cache,不管读写都优先从内存。
--
FROM 111.196.132.*
没用raid
【 在 chaosu 的大作中提到: 】
: 最重要的是硬盘速度吧,服务器硬盘强,如果还有RAID就更快了。
: - 来自 水木社区APP v3.5.7
--
FROM 111.196.132.*
我理解是它不太可能缓存这么多文件。10多个G
【 在 RuralHunter 的大作中提到: 】
: 你了解一下linux的文件系统缓存机制吧
--
FROM 111.196.132.*
是的内存挺大。但是我没想到它会把那么多文件都缓存进来。不知道copy是怎么实现的。
【 在 SlO 的大作中提到: 】
: 你不是说你有200G的内存吗?os完全可以拿它们来缓存硬盘文件了。
--
FROM 111.196.132.*
没差多少。确实这么大。
【 在 chaosu 的大作中提到: 】
: 还有一种可能是文件大小虽然是10G,实际占用空间却远不到10G,复制起来就很快。可以用du -sh和stat命令看一下实际占用空间。
: - 来自 水木社区APP v3.5.7
--
FROM 111.196.132.*
我是copy过去之后其他程序立刻就开始读了。
【 在 lambdago 的大作中提到: 】
: 你复制了不一定复制了,
: 你删除也不一定删除了。
--
FROM 111.196.132.*
可能和硬盘卡有关。
【 在 chaosu 的大作中提到: 】
: 刚在服务器和笔记本上都试了一下,10G文件。
: 服务器是几秒钟,貌似还是机械硬盘,也没RAID。
: 笔记本10秒多一点,速度显示750MB/秒上下,当前普通的SSD水平吧,性能不算突出。
: ...................
--
FROM 111.196.132.*