Ubuntu – External Hard drive gets slow while copying lots of data

hard driveperformance

I have an external 5T drive where I want to copy my files (about 22GB). When copying the files everything runs well for a while and then it gets really slow (maybe because of the file size?):

If I want to do other things in parallel (e.g. cloning a git repository) it is very very slow.

Is there a solution for this problem? Maybe formatting the hard drive would help? Currently it's formatted to ntfs.

This doesn't affect the general speed of my machine. It's only happening in the hard drive.


Relevant output:

$ lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=uas, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
    |__ Port 5: Dev 3, If 0, Class=Wireless, Driver=btusb, 12M
    |__ Port 5: Dev 3, If 1, Class=Wireless, Driver=btusb, 12M
    |__ Port 7: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 7: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 8: Dev 5, If 0, Class=Vendor Specific Class, Driver=rtsx_usb, 480M

Best Answer

Seems that you have connected external drive to USB2 port. USB2 have more computational overhead and slower speed than USB3, if you have USB3 - connect drive to that port.

Use lsusb -t command to find out wire speed of hard drive.

And, by the way - if it is regular hard drive, not SSD - you are limited by physics. Conventional HDDs are able to read or write from one physical location at time. If you ask to do multiple reads / writes - heads need to be repositioned frequently, it affects overall reading / writing speed.

==== Author pointed out to hardware problem - see comments.

Related Question