linux 进程 锁定cpu,如何限制Linux中任何进程的CPU使用情况 | MOS86

有没有经历过您打开一个特定应用程序(如Firefox)的情况,并使整个系统处于停顿状态?如果您正在运行Web服务器,最后一件事就是让应用程序崩溃整个系统并将所有网站关闭。

Cpulimit是一个可以限制进程CPU占用率的Linux应用程序。如果要限制特定的应用程序占用太多的CPU资源,从而破坏系统,这是非常有用的。当您需要同时运行多个密集程序时,这也是有用的。

Note: cpulimit应该适用于所有Linux发行版。在本教程中,我们将使用Ubuntu进行说明。

Installation

在Ubuntu中,您可以通过Ubuntu软件中心安装cpulimit,点击这里安装,或在terminal:

sudo中键入以下命令apt-get install cpulimitUsage

要限制进程,请使用命令

sudo cpulimit -p PID -l CPU?p34 PID是正在运行的应用程序的进程ID和CPU%是应用程序允许的CPU资源的百分比(0-100,仅数)。您可以从系统管理 - 系统监视器获取PID。

71b5c0fc49b11409877cc5972a473247.gif

从上面的屏幕截图可以看出,在设置CPU限制之前,Swiftfox应用程序(Firefox的一个变体)占用了CPU资源的68%。让

71b5c0fc49b11409877cc5972a473247.gif

71b5c0fc49b11409877cc5972a473247.gif

%CPU立即下降到20%以下,再也没有超过20%。

扩展cpulimit此外,您还可以将其设置为对任何行为不正常的应用程序进行监控。这在服务器设置中特别有用。来自Ubuntu论坛的

abcuser已经提出了一个伟大的脚本,可以自动监控系统并限制任何超出预设CPU限制的进程。该脚本还允许您为特定应用程序设置黑名单/白名单。

在开始之前,请确保您安装了cpulimit和gawk。

sudo apt-get install cpulimit gawk

在这里下载脚本。将tar文件解压缩到您的Home文件夹。你应该在cpulimit folder: cpulimit_daemon里面有两个文件。sh和cpulimit。

打开cpulimit_daemon。sh文件在您的文本编辑器(gEdit)并更改以下内容:

71b5c0fc49b11409877cc5972a473247.gif

CPU_LIMIT:这是每个应用程序可用的最大CPU资源。默认值为20%。

DAEMON_INTERVAL:这是脚本检查系统的时间间隔。默认设置为3秒。

BLACK_PROCESS_LIST:其中包含特定要监视的项目列表。你可以使用例如,

WHITE_PROCESSES_LIST:这包含您DON的项目列表你可以使用例如,

Note:一个或两个变量BLACK_PROCESSES_LIST和WHITE_PROCESSES_LIST必须为空。您可以

设置

复制cpulimit_daemon。sh文件到/ usr / bin / folder

sudo cp〜/ cpulimit / cpulimit_daemon。sh / usr / binsudo chmod 700 / usr / bin / cpulimit_daemon。sh

将cpulimit文件复制到/ etc / init。d /文件夹,设置必要的权限并使其在statup期间运行。

sudo cp〜/ cpulimit / cpulimit / etc / init。D /sudo chown root:root / etc / init。D /请将CPULimitsudo chmod x / etc / init。D /请将CPULimitsudo update-rcd cpulimit defaults

现在,重启系统。cpulimit守护进程应该自动启动。

您可以打开一个终端,并输入:

sudo服务cpulimit status

来检查cpulimit守护程序是否正在运行。如果没有运行,启动它与命令

sudo服务cpulimit start

或者,停止它与:

sudo服务cpulimit stopUninstalling

卸载,在这里停止cpulimit daemon

sudo服务cpulimit stop #停止cpulimit守护进程和所有cpulimited进程

2.从启动过程中删除守护进程

sudo update-rc。d -f cpulimit删除#删除符号links

3.删除启动过程

sudo rm / etc / init。d / cpulimit #删除cpulimit启动script

4.删除cpulimit daemon

sudo rm / usr / bin / cpulimit_daemon。sh #删除cpulimit守护程序script

5.卸载cpulimit程序

sudo apt-get删除cpulimit

可选,卸载gawk程序

sudo apt-get删除gawk

有关更多信息,请参阅Ubuntu论坛了解更多详细信息。

Code credit: abcuser从Ubuntu Forum

."

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值