问题标签 [ulimit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - ulimit Hard (-H) 和 Soft (-S) 的含义
硬/软限制是什么意思?
例如,核心文件大小的差异:
ulimit -Sc 1024
与ulimit -Hc 1024
ulimit -c unlimited
我通常在运行二进制文件之前放入我的脚本。
但是,我想限制文件大小以避免磁盘已满。
然后我想知道最好的方法:
另一个建议:价值呢?
ulimit -c 1024
还是ulimit -c 10240
别的什么?
postgresql - 如何在 OS X Lion 上获取核心转储?
我正在使用 C 语言开发一个 PostgreSQL 扩展,它会出现段错误,所以我想查看我的 OS X Lion 机器上的核心转储文件。/cores
但是,在我能找到的任何地方或其他任何地方都没有核心文件。似乎它们在系统中已启用,但大小限制为 0:
我尝试ulimit -c unlimited
在我用来启动和停止 PostgreSQL 的 shell 会话中进行设置,它似乎坚持:
然而,无论我做什么,都没有核心文件。我从 PostgreSQL 开始pg_ctl -c
,其中-c
告诉 PostgreSQL 生成核心转储。但是系统什么都没有。如何让 Lion 转储核心文件?
emacs - Emacs eshell 'ulimit' 命令
为什么我在 esehll 模式下找不到 ulimit 命令,但 Mx ansi-term 没有这个问题。我怎么能修好它。
像这样:
〜$ ulimit -c
ulimit:找不到命令
〜$
python - 如何关闭 tempfile.mkstemp 中的文件?
在我的机器上,Linux 机器ulimit -n
提供1024
. 这段代码:
在最后一行循环失败:
似乎我已经打开了很多文件 - 但是type
off
和path
很简单int
,str
所以我不确定如何关闭我打开的每个文件。如何关闭 tempfile.mkstemp 中的文件?
php - PHP中的全局进程生成限制?
我有一个在 Ubuntu linux 机器上运行的 PHP 脚本。该脚本使用该函数生成多个进程pcntl_fork()
,并使用该pcntl_waitpid()
函数记录它们被杀死。它经常产生这些(我估计大约 40-50/秒),但是这些进程都被立即杀死(我已经尝试exit()
过posix_kill(${pid}, SIGKILL)
,无济于事)。该脚本可以正常工作几秒钟(取决于 10~30 秒),但不可避免地会停止并停止创建“子”进程。由于脚本导致的机器上的内存使用量没有增加,但是当脚本停止时,机器上的 cpu 会慢慢飙升,直到我用 Ctrl-C 强制终止脚本。每个进程都旨在解析一行文本并最终将其保存到文件中。出于测试目的,我只是在创建子进程后立即退出它们。在一项测试中,大约 1400 个进程在脚本冻结之前成功启动并终止,尽管就像我说的那样。
我知道一台机器有一个 ulimit,但我相信我读到它限制了并发进程的数量。由于此脚本在创建子进程后立即将其杀死,因此我对正在发生的事情感到困惑。这是我当前的 ulimit 配置 ( ulimit -a
) 的输出:
PHP 中是否有一个全局限制来确定脚本执行期间创建的进程总数?**请记住,这些子进程会立即被杀死,所以我不认为这是创建无限数量的进程窃取系统资源的问题。
这是一些源代码:
我用这个初始化叉子
进程分叉函数。在这种情况下,$callback 是要在适当的类中调用的函数的名称。$params 是要传递给 $callback 中指定的函数的参数数组。
实际处理文本行的函数。文本行是 JSON 对象:
抱歉,如果代码太多,请告诉我任何问题
ubuntu - 从 ubuntu 的终端,更改文件描述符编号的 ulimit
从终端我试图改变打开的文件描述的数量,他们不会坚持。如何从终端更改 ulimit?根据以下内容,当我从终端运行 uwsgi 时,fd 位于 1024。
linux - 限制分叉/子进程的数量
我在 Ubuntu 12.04 上托管一个计算服务,我需要一种方法来防止用户进行分叉炸弹攻击。我目前setrlimit(RLIMIT_NPROC)
在 Linux 中使用。但是,这实际上对给定 UID 的进程数设置了全局限制。因为我的服务有许多并行作业,都以相同的 UID 运行,这意味着一个进程可以 DOS 整个服务。
相反,我正在寻找一种方法来设置限制,例如当前进程的子进程的递归数量。我被告知要研究 linux cgroups
/libcgroup
但老实说,我真的不明白这如何解决我的问题。有小费吗?
python - 如何检测所有打开的文件处理程序以便关闭?
我想修补 python popen2,它试图通过在[3, SC_OPEN_MAX]
.
这意味着,如果有人将使用上限ulimit
增加到 1,000,000 之类的巨大值,它将使任何使用 popen 有效阻塞的 python 应用程序。
问题的重点是:如何获取进程的打开文件处理程序列表。该解决方案至少应该适用于 linux 和 Windows。
注意:这是为了重新修复http://bugs.python.org/issue1663329
centos - 在 CentOS 上为 apache 设置 ulimit
我一直尝试更改在 CentOS 上运行的 apache 的 ulimit 参数设置。这是我的 /etc/security/limits.conf 的设置
我也重新启动了系统,但是当我尝试使用 PHP 脚本检查 apache 的 ulimit 参数时,它们没有设置。有什么我遗漏的东西,我是否需要在某处创建其他条目或其他参数?请建议
java - 在 linux 中从 jvm 中查找硬和软打开文件限制(ulimit -n 和 ulimit -Hn)
我有一个问题,我需要从 java/groovy 程序中找出 linux 中进程的硬和软打开文件限制。当我从终端执行 ulimit 时,它会为硬打开文件限制和软打开文件限制提供单独的值。
但是,如果我在 groovy 中执行它,它会忽略软限制并始终返回硬限制值。
如果我遗漏了什么,请告诉我。我使用 ubuntu 12.04,Groovy 版本:1.8.4 JVM:1.6.0_29 来执行此操作。
更新:我在 Java 中尝试过同样的事情。
该程序的输出:
为什么Java中的行为相同。java是否有机会设置ulimit。提前致谢。