我正在编写一个 shell 脚本,将 GB 的数据从目录 A 复制到目录 B。
脚本运行良好,但它确实消耗了可用资源 - 大概是磁盘读/写?
是否有某种方法可以限制进程,以限制其对磁盘/处理器/内存等资源的使用?
答案1
Linux 内核针对 I/O 有不同的调度类。使用ionice
命令可以从中受益。
例如
ionice -c 3 your_copy_script.sh
将在课堂上运行你的脚本idle
,这意味着脚本只有在没有其他进程需要时才会获得 I/O 时间。
如果需要修改已经运行的进程,
ionice -c 3 -p pid_of_your_program
可以。请参阅man ionice
以了解更多信息。