Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I am using Linux via an external drive & as such it's not able to provide that transfer speed efficiency as is provided by internal SATA plus not every PC has USB3...

Thus when I transfer say a ~5gb film from or to this external drive I notice that OS stucks or gnome breaks..

I thought that it be better that I use a defined transfer while copying large files...the idea is to cap transfer rate at max of 10mb/sec instead of present +20mb/sec. So how do I do it

cp <source> <desitnation> -<flag> <mydefinedrate> 
share|improve this question
add comment

2 Answers

up vote 2 down vote accepted

You can use rsync for that, for example:

rsync /path/to/source /path/to/dest --bwlimit 2000 --progress

The --bwlimit flag is to cap the transfer speed, the parameter is in KBps, so 2000 is roughly 2MB per second. The --progress is an extra nice touch to show progress. (Personally I use rsync all the time as a cp with progress indicator...)

share|improve this answer
add comment

I am not sure how to request a specific speed, but you can reduce the I/O priority of the process, which should have the same outcome.

Reduce the priority a little (default "best effort" scheduling with reduced priority)

ionice -n 7 cp <src> <dest>

Reduce the priority a lot ("idle only" scheduling)

ionice -c 3 cp <src> <dest>
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.