为什么在 Linux 中将数据复制到目标设备时源设备上会有写入活动?

为什么在 Linux 中将数据复制到目标设备时源设备上会有写入活动?

我的嵌入式Linux系统有两个块设备:

  • SD卡:/dev/mmcblk0
  • NVMe SSD:/dev/nvme0n1

我正在将文件从 SD 卡复制到 NVMe SSD,并用它nmon来监控两个设备上的磁盘活动。

我原本期望只会有R来自源设备(即/dev/mmcblk0)的(读取活动),但似乎WSD 卡也显示了(写入活动)。

nmon 屏幕截图

这正常吗?如果正常,原因何在?

答案1

我正在从 SD 卡复制文件
...
但似乎 SD 卡也显示 W(写入活动)。

读取的每个文件的元数据都会更新。
具体来说,必须记录读取和复制的每个文件的最后一个“访问”时间戳。

您可以使用以下方法验证每个文件的“访问”时间戳是否已更新统计命令。
请参阅这个答案描述文件复制的驱动器活动。

由于 SD 卡也具有 rootfs,因此可能会有一些与系统日志和/或交换区域相关的 I/O 活动,但正常的文件复制不太可能生成日志消息或引起页面交换。

相关内容