文件传输到 U 盘的速度慢

文件传输到 U 盘的速度慢

我正在将文件复制到 USB 3.0 记忆棒。 USB 记忆棒已插入蓝色 USB 端口。

我正在复制 22 个 1.5GB 的文件。

当我进行复制(简单的拖放)时,复制对话框报告速度约为 60MB/s,然后,在复制第一个 1.5 GB(肯定是第一个文件)后,进程停止了几分钟,之后,报告传输速度低于 3MB/s。 最初估计为几分钟的传输时间现在估计为几个小时……

在此输入图像描述 在此输入图像描述

lsusb -t

报告:

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M
    |__ Port 1: Dev 6, If 0, Class=Mass Storage, Driver=usb-storage, 480M
    |__ Port 9: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 2: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 3: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 10: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M

该设备在总线01上,报告480M,这是一个速度吗?如果是这样,我看到总线 02 的速率更高,为 5000M,但我尝试了所有可访问的端口,但无法让 USB 记忆棒出现在该总线下。

lsb_release -a

报告

Distributor ID: LinuxMint
Description:    Linux Mint 18.3 Sylvia
Release:    18.3
Codename:   sylvia

笔记:

  • 在 Windows 计算机上使用同一个 USB 记忆棒在不到一个小时内即可复制相同的文件,而在我的 Linux 计算机上则需要 6 个多小时。所以我真的怀疑Linux系统没有正确处理USB 3(因为它显示密钥为480M,而它是USB 3记忆棒:有一个蓝色的USB连接器并作为USB 3出售)
  • 尝试了不同的 USB 3 记忆棒。这次它出现在 Bus 02 5000M 下,并且复制速度要快得多(即使估计仍然很危险)。显然我的电脑可以正确处理一些 USB 3 设备,但不能处理我在原来的帖子中使用的设备。显然 Windows 能够做到这一点,希望 Linux 可以做一些事情来以更好的方式管理它。

怎样才能让复制速度更快?

答案1

进程停止几分钟,之后传输速度据报告低于 3MB/s

第一个脏缓冲区被填满,您看不到真正的写入速度,一旦它们被填满,您就开始获得真正的写入速度。

更多信息请点击这里:

为什么 2013 年会出现“U 盘失速”问题?为什么现有的“无 I/O 脏节流”代码没有解决这个问题?

https://lwn.net/Articles/572911/

这是我自己解决的方法:

/etc/sysctl.d/dirty_buffers.conf
# Per Torvalds advice
vm.dirty_background_bytes = 33554432
vm.dirty_bytes = 134217728

由于某些原因,即使对于 Linux 6.2,这仍然相关。

相关内容