当我运行rsync
涉及复制大文件的备份作业时,运行备份的机器(Mac 桌面和 Linux 服务器)会停止运行,并且平均负载会达到顶峰。
我试过了:
nice
处理rsync
过程(无济于事 - 瓶颈是磁盘)- 在 Linux 上,
renice
ing akjournald
(有帮助,但似乎是 hack 并且在 Mac 上不起作用) - 使用
--bwlimit
rsync
标志(有帮助,但这意味着所有传输都很慢 - 即使它们不需要)
那么,我有什么办法可以“ nice
”rsync
的 IO 以便在备份运行时机器可以使用?
PS:我知道rsync
在 Mac 上的危险……但我使用BackupBouncer来验证我的备份,不过,它们看起来还不错。
看起来
setpriority
Mac OS X 上的 API 应该能够改变 IO 调度(参见http://developer.apple.com/mac/library/documentation/Darwin/Reference/ManPages/man2/setpriority.2.html) . 我手边没有任何 MacOS,所以我无法测试它nice
实际上改变了 IO 优先级。在 Linux 方面,
ionice
这就是您要寻找的东西。在 linux 上你可以使用
ionice
http://linux.die.net/man/1/ionice