标签: resource-limiting

如何限制互联网带宽?

我收到抱怨说我消耗了大量互联网带宽。

有没有什么软件可以限制我电脑上的互联网带宽?我使用 Firefox 作为浏览器并使用 bittorrent 并从软件中心下载软件。

(有没有办法监控呢?)

software-recommendation resource-limiting

68
推荐指数
1
解决办法
5万
查看次数

可能导致操作系统崩溃的贪婪应用程序的内存限制解决方案?

我用我的电脑进行科学编程。它具有健康8GB的 RAM 和12GB交换空间。通常,随着我的问题变得越来越大,我超出了所有可用的 RAM。而不是崩溃(这将是首选),Ubuntu 似乎开始将所有内容加载到交换中,包括 Unity 和任何打开的终端。如果我没有及时赶上一个失控的程序,我只能等待 - 切换到命令提示符需要 4-5 分钟,例如。Ctrl-Alt-F2在那里我可以杀死有问题的进程。

由于我自己的愚蠢超出了本论坛的范围,当我用完单个违规程序的所有可用内存时如何防止 Ubuntu 通过颠簸崩溃?

在家实验*!

打开一个终端,启动python,如果你已经numpy安装,试试这个:

>>> import numpy
>>> [numpy.zeros((10**4, 10**4)) for _ in xrange(50)]
Run Code Online (Sandbox Code Playgroud)

* 警告:可能产生不良影响,通过监控进程iotoptop及时终止进程。如果没有,我会在你重启后见到你。

memory-usage ram resource-limiting

34
推荐指数
2
解决办法
3万
查看次数

如何在 Ubuntu 18.04 上增加最大打开文件限制?

我已经运行ulimit -n 65536,将以下行添加到/etc/security/limits.conf

*    soft nofile 65536
*    hard nofile 65536
alix soft nofile 65536
alix hard nofile 65536
root soft nofile 65536
root hard nofile 65536
Run Code Online (Sandbox Code Playgroud)

并添加session required pam_limits.so到两者中:

  • /etc/pam.d/common-session
  • /etc/pam.d/common-session-noninteractive

并且fs.file-max = 65536/etc/sysctl.d/60-file-max.conf

尽管如此,ulimit -n在我的会话重新启动并运行后,我只得到 4096(之前是 1024)。

我错过了什么?

system ulimit resource-limiting 18.04

28
推荐指数
3
解决办法
5万
查看次数

有没有办法限制软件中心使用的带宽?

每当我使用 Ubuntu 软件中心(或任何与此相关的软件包管理器)下载软件包时,我的 Internet 连接速度都会减慢到绝对爬行。事实上,大多数请求超时。

有没有办法限制软件中心在下载软件包时使用的带宽?

software-center apt bandwidth resource-limiting

23
推荐指数
1
解决办法
1303
查看次数

21
推荐指数
3
解决办法
1万
查看次数

如何限制进程的 CPU 和 RAM 使用量?

我使用的是带有 SFTP 和控制台的 Ubuntu VPS。我需要一个特定的进程来仅使用 60% 的 CPU 和 2048 MB 的 RAM。

我还需要另一个进程仅使用 30% 的 CPU 和 1024MB 的 RAM。

如何限制进程的 CPU 和 RAM 使用量?

cpu ram resource-limiting

21
推荐指数
2
解决办法
3万
查看次数

如何对 shell 脚本施加内存限制?

我有一个 PHP 脚本,虽然文件夹包含 XML 文件,但会将它们处理到数据库中。

目前,服务器运行的是 PHP 5.3.10 版本,并且有一个关于循环内触发的内存问题的错误报告ZEND_MM_HEAP

这会导致 PHP 无法正确释放内存,从而导致错误和脚本崩溃:

 zend_mm_heap is corrupted
Run Code Online (Sandbox Code Playgroud)

找到了一些解决方案,但我无权访问服务器设置。

为了解决这个问题,我准备了以下 bash 脚本来处理循环,让 PHP 脚本只负责处理 XML 文件:

#!/bin/bash

# Check for files to process
# If files are present, call
# the PHP script

DIR="/path/to/dir/with/files"
while [ "$(ls -A $DIR)" ]; do
        php /path/to/php/script/myscript.php
done
Run Code Online (Sandbox Code Playgroud)

我现在的目标是限制这个 bash 内存分配(内存和虚拟内存),从而防止它在出现问题时挂起系统。

我的问题是:
如何将这个 shell 脚本使用的内存限制为特定数量?

bash ram resource-limiting

11
推荐指数
1
解决办法
2万
查看次数

如何限制用户可以启动的进程数?

我们试过了/etc/security/limits.conf,但这似乎没有效果。

用于limits.conf 的行如下所示:

myuser hard nproc 6
Run Code Online (Sandbox Code Playgroud)

那是服务器的配置。我想限制启动的进程。Ulimit 限制从 shell 启动的进程(如果我理解正确的话)。但在我的情况下,apache 启动 mapserver-processes,并且这个数量必须受到限制。

server security resource-limiting

10
推荐指数
1
解决办法
495
查看次数

叉炸弹保护不起作用:进程数量不受限制

我刚刚意识到我的系统没有正确限制每个用户的进程数量,因此不会阻止用户进行分叉炸弹并使整个系统崩溃:

user@thebe:~$ cat /etc/security/limits.conf | grep user
user        hard    nproc   512
user@thebe:~$ ulimit -u
1024
user@thebe:~$ :(){ :|:& };:
[1] 2559
user@thebe:~$ ht-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
...
Connection to thebe closed by remote host.
Run Code Online (Sandbox Code Playgroud)

这是一个错误还是为什么它忽略了限制limits.conf,为什么不应用ulimit -n声称的限制?

PS:我真的不认为在进程限制之前达到内存限制。这台机器有 8GB 内存,当我扔下叉形炸弹时,它只使用了 4%。 …

process ulimit resource-limiting

8
推荐指数
1
解决办法
2319
查看次数

time 和 ulimit 命令使用的千字节是 1000 (SI) 还是 1024(老式)字节?

man time

M      Maximum resident set size of the process during its lifetime, in Kilobytes.
Run Code Online (Sandbox Code Playgroud)

ulimit -a

max memory size         (kbytes, -m) unlimited
Run Code Online (Sandbox Code Playgroud)

“千字节”可能意味着 1000 或 1024 字节。我猜这是一轮 1024,但我想确定一下。权威参考将不胜感激。

请随意将我的问题改写为:执行timeulimit符合 IEC 建议,或使用 kibibyte 含义中的“kilobyte/kbyte”

memory-usage ram ulimit resource-limiting

8
推荐指数
2
解决办法
2067
查看次数