Linux kernel priorities often assume that your memory and disk operations have priority over USB i/o. This leads to situations where you are waiting for some files to write and your system thinks you aren’t in a hurry.
This trick worked for me, I found it on one of Peter Stevenson’s github pages.
Copied text follows. Saving here in the blog for safekeeping! You will need “Sudo su” first to write the file. Cheers!!
If your running a x64 bit Ubuntu or other Linux and find USB transfers hang at the end apply this fix:
echo $((16*1024*1024)) > /proc/sys/vm/dirty_background_bytes echo $((48*1024*1024)) > /proc/sys/vm/dirty_bytes
I suggest you edit your
/etc/rc.local file to make this change persistant across reboots.
sudo nano /etc/rc.local
Go to the bottom of the file and leave a space then paste in those two lines.
Save the file with ctrl + x then press y.
To revert the changes enter this in console and remove the lines in
echo 0 > /proc/sys/vm/dirty_background_bytes echo 0 > /proc/sys/vm/dirty_bytes