当我运行一个涉及复制大文件的rsync备份作业时,运行备份的计算机(包括Mac桌面和Linux服务器)都会停下来,并且负载平均值将全部上升。
我试过了:
nice的rsync进程(没有帮助 – 瓶颈是磁盘) renice一个kjournald (帮助,但似乎是一个黑客,并不能在Mac上工作) --bwlimit rsync标志(帮助,但意味着所有的传输速度都很慢 – 即使不需要) 那么,有没有什么办法可以“ nice ”的rsync的IO,使机器在备份运行时可用?
PS:我知道在Mac上的rsync的危险…但是我用BackupBouncer来validation我的备份,虽然,他们似乎没问题。
看起来Mac OS X上的setpriority API应该能够改变IO调度(参见http://developer.apple.com/mac/library/documentation/Darwin/Reference/ManPages/man2/setpriority.2.html )。 我没有任何MacOS方便,所以我不能testing,实际上改变了IO优先级。
在Linux方面, ionice是你正在寻找的。
在linux上,你可以使用ionice http://linux.die.net/man/1/ionice