- 主题:copy文件速度跟啥有关?
应该不是在内存里。应该copy的只是一个链接。等有改动的时候才会真正的复制内容。
【 在 poggy 的大作中提到: 】
: 说明一直都在内存里啊, 根本就没从磁盘读取。
: 其实, 所谓的copy相当于是异步的,从源盘直接放到内存里面, 就成功返回了,
: 内存中的数据如何和目标硬盘同步刷新, 是操作系统后台透明做的。
: ...................
--
FROM 111.196.132.*
不是这个原因。单纯copy并没有cache。而是增加了一个链接引用计数而已。它甚至都没有后把内容读到内存。
我压缩这个目录。就慢起来了。算是压缩的时间和读取的时间,感觉是正常的时间长度。
【 在 SlO 的大作中提到: 】
: 建议你仔细看看 Linux kernel development 这本书的 The Page Cache and Page Writeback 这一章节。第3版的第16章。我目前也在看。开头第一句就是
: The Linux kernel implements a disk cache called the page cache.The goal of this cache is to minimize disk I/O by storing data in physical memory that would otherwise require disk access.
--
FROM 111.196.132.*
如果你确定copy只是增加计数的话,这个动作是不是跟文件系统有关系?不同的文件系统对于copy处理的方式不同。你服务器上用的什么文件系统?
【 在 chunhui 的大作中提到: 】
: 不是这个原因。单纯copy并没有cache。而是增加了一个链接引用计数而已。它甚至都没有后把内容读到内存。
: 我压缩这个目录。就慢起来了。算是压缩的时间和读取的时间,感觉是正常的时间长度。
--
FROM 124.64.17.*
我压缩目录,就看起来时间正常了。说明读取了。
xfs
【 在 SlO 的大作中提到: 】
: 如果你确定copy只是增加计数的话,这个动作是不是跟文件系统有关系?不同的文件系统对于copy处理的方式不同。你服务器上用的什么文件系统?
--
FROM 111.196.132.*
我在网上找到一篇关于xfs reflink 的文章,貌似可以解释这个现象。无法发连接。
可以搜索以下
Darrick Wong xfs-data-block-sharing-reflink
XFS - Data Block Sharing (Reflink)
January 6, 2020 | 5 minute read
【 在 chunhui 的大作中提到: 】
: 我压缩目录,就看起来时间正常了。说明读取了。
: xfs
--
修改:SlO FROM 124.64.17.*
FROM 124.64.17.*
赞
【 在 SlO 的大作中提到: 】
: 我在网上找到一篇关于xfs reflink 的文章,貌似可以解释这个现象。无法发连接。
: 可以搜索以下
: Darrick Wong xfs-data-block-sharing-reflink
: ...................
--
FROM 111.196.132.*
1秒内就算ram存完了,还要通过cpu写入硬盘栅格,这也是要花时间的。
所以1秒后显示copy结束,但是硬盘建立文件实体未必完成了。
这时读硬盘目的文件未必能读取,但是直接从内存读取还是可以的。
【 在 chunhui 的大作中提到: 】
: 这个我没验证。我用的就是copy命令。这个命令如果没sync到磁盘会返回?我理解这个命令一旦结束,就操作完成了。
: 如果它没sync到目的地就返回的话,那如果有个脚本,在copy之后紧跟着就读目的地的文件,岂不是会失败?
--
FROM 219.134.156.*