我正在尝试通过 USB 读卡器将大约 20GB 的音乐从我的 Arch Linux 笔记本电脑传输到 Micro SD 卡。这个过程一开始很顺利;前约 50 首歌曲总共需要一秒钟,尽管从我读到的内容来看,这只是与缓存(或其他东西......)有关,并不代表实际速度。然后是我认为合理的速度,每首歌曲需要 1 到 5 秒(文件是无损的,所以平均大约 15mb)。
然而,在几百首歌曲之后,一切就完全变慢了。传输一个文件大约需要五分钟,这是保守估计。我让它运行了一整夜,但几乎没有取得任何进展!
该卡是最近购买的 10 级 Sandisk,我尝试在 USB 和常规 SD 卡适配器中使用它,因此在进一步研究物理方面之前,我想尝试一些操作系统级解决方案。我还尝试了笔记本电脑上的所有三个 USB 端口,它们都面临同样的问题。我尝试过使用常规cp -rv ~/music /mnt/sd
命令以及rsync -rvh ~/music /mnt/sd
,并且两者都发生了同样的事情。如果出于测试目的,我复制到同一分区上的目标,那么一切都很好,所以这肯定与它位于不同的分区上有关。我也尝试过发布的建议这里这没有帮助。
我的内核版本是4.10.9。
有任何想法吗?
答案1
大多数情况下,问题一定是因为您的内存容量或 IO 读/写 当您复制文件时,数据将存储到您的内存中,然后复制到目标位置,因为您正在复制高达 20GB 的大文件,所以问题可能是由于限制ram,如果 ram 不是这种情况,那么由于 IO 读/写容量可能会出现瓶颈(尽管这不应导致停止)。检查统计信息是否存在 CPU 过载。更喜欢使用“sar -P ALL”命令来检查 CPU 负载统计信息。还可以尝试检查内存使用情况的统计数据。