如何限制 rm 的 CPU 和磁盘使用率以允许其他程序保持正常运行

如何限制 rm 的 CPU 和磁盘使用率以允许其他程序保持正常运行

当删除一个大文件时,rm似乎会占用所有可用的 CPU 和磁盘资源,以至于其他程序挂起。

有没有办法限制程序(特别是 CPU 或磁盘密集型程序)对系统的影响?有没有办法在删除大文件时限制其影响?

答案1

nice(看这里)是为您执行此操作的程序。您可以将其用于renice正在运行的程序。请注意,这只对 CPU 起作用,有相应的ionice(请参阅这里

答案2

GETRLIMIT(2)

NAME
       getrlimit, setrlimit, prlimit - get/set resource limits

SYNOPSIS
       #include <sys/time.h>
       #include <sys/resource.h>

       int getrlimit(int resource, struct rlimit *rlim);
       int setrlimit(int resource, const struct rlimit *rlim);
       int prlimit(pid_t pid, int resource, const struct rlimit *new_limit,
               struct rlimit *old_limit);

相关内容