标签: ulimit

如何使用supervisord配置ulimit(启动清漆)

我正在将服务器配置迁移到supervisord(来自init.d文件).

有几个varish运行的例子.我记得当我开始使用清漆时,我遇到了ulimit问题,所以init.d/varnish脚本中有以下几行

ulimit -n $ {NFILES:-131072} ulimit -l $ {MEMLOCK:-82000}

我正在配置supervisord以使用参数运行/ usr/sbin/varnishd程序.

如何通过supervisord配置ulimit设置?我只是将varnishd程序包装在脚本中吗?

varnish ulimit supervisord

6
推荐指数
1
解决办法
2272
查看次数

在Perl中打开10,000多个文件时出现问题

我需要在Perl脚本中打开超过10,000个文件,因此我要求系统管理员将我帐户的限制更改为14,000.ulimit -a现在显示这些设置:

core file size        (blocks, -c) unlimited
data seg size         (kbytes, -d) unlimited
file size             (blocks, -f) unlimited
open files                    (-n) 14000
pipe size          (512 bytes, -p) 10
stack size            (kbytes, -s) 8192
cpu time             (seconds, -t) unlimited
max user processes            (-u) 29995
virtual memory        (kbytes, -v) unlimited
Run Code Online (Sandbox Code Playgroud)

在更改之后,我运行了一个测试Perl程序,该程序打开/创建256个文件,并在脚本结束时关闭256个文件句柄.当它创建253个文件时,程序会死于说太多打开的文件.我不明白为什么我会收到这个错误.

我正在使用Solaris 10平台.这是我的代码

my @list;
my $filename = "test";

for ($i = 256; $i >= 0; $i--) {
    print "$i " . "\n";
    $filename = "test" . "$i";
    if …
Run Code Online (Sandbox Code Playgroud)

perl solaris file ulimit

6
推荐指数
2
解决办法
1970
查看次数

从外壳设置`ulimit -c`

我有一个程序在启动时自动运行,偶尔会导致coredump.

我想记录输出,但我似乎无法以ulimit -c编程方式设置(它默认为0,并且每次都重置).

我使用bash脚本,以及Python的尝试sh,os.systemsubprocess,但我不能得到它的工作.

python bash shell ulimit

6
推荐指数
1
解决办法
5333
查看次数

在macOS Sierra中启用崩溃进程的核心转储

我需要为SIGABRT,SIGBUS,etc等终止的进程启用核心转储文件创建.

在以前版本的MAC OS X(包括ElCapitan)中,我将为所有进程启用Code Dumps文件:

sudo sysctl -w kern.corefile=/Users/tester/core.%U.%P.%N.dump
sudo sysctl -w kern.coredump=1
sudo launchctl limit core unlimited
sudo ulimit -c unlimited
launchctl limit core unlimited
ulimit -c unlimited
Run Code Online (Sandbox Code Playgroud)

现在这种方式不起作用.在本网站上讨论新的gcore命令,但它适用于运行进程.对于KernelCoreDumps,您现在必须启用NVRAM变量官方.

coredump ulimit sysctl macos-sierra

6
推荐指数
1
解决办法
1439
查看次数

如何在R中设置C堆栈的大小?

我正在尝试使用R中spread()tidyr包中的函数来处理具有大约300万个观测值的数据帧.它返回以下错误消息:

Error : C stack usage  26498106 is too close to the limit
Run Code Online (Sandbox Code Playgroud)

当我跑步时Cstack_info(),它告诉我

> Cstack_info()
      size    current  direction eval_depth 
   7969177      15272          1          2 
Run Code Online (Sandbox Code Playgroud)

根据这个问题的答案中的建议,我尝试通过ulimit -s 32768在终端窗口中运行并从终端打开Rstudio来增加堆栈大小.但是,当我尝试这个时,输出Cstack_info()没有改变,当我运行我的代码时,我收到相同的错误消息.继同一个早期问题的另一个答案后,我尝试更新R和Rstudio,也无济于事.我在这做错了什么?

我在mac os x 10.12.2上运行R 3.3,内存为16 GB.

r ulimit

6
推荐指数
1
解决办法
2342
查看次数

使用 Puppet 配置 ulimit

我想知道如何使用 Puppets exec 类型运行 ulimit 命令。ulimit 的问题似乎是它不是二进制文件,因此必须在其前面使用 /bin/bash 来调用它。我正在尝试将核心文件大小更改为无限制。我有这个,但不识别 ulimit。

exec {"ulimit":
        command => "/bin/bash ulimit -c unlimited",
}
Run Code Online (Sandbox Code Playgroud)

我可以在命令行中执行“ulimit -c unlimited”,它会毫无问题地更改值。问题是通过 Puppet 来做到这一点。任何帮助都会很棒。

puppet ulimit

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

Unix 域套接字有最大连接数吗?

对于 TCP/IP 连接,如果有单个目标端口,则两台主机之间最多有 64k 连接(来源:现代 Linux 机器可以拥有的理论最大打开 TCP 连接数是多少)。Unix 域套接字是否有连接限制,或者仅受文件描述符数量的限制?

unix sockets ulimit unix-socket

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

Windows Git Bash - ulimit - 打开文件太多

我想增加 Windows 7(64 位)上打开文件数量的限制。在我的命令行环境中使用 Git Bash,我输入以下命令:

$ ulimit -n 9999
Run Code Online (Sandbox Code Playgroud)

但是,我遇到以下错误:

bash: ulimit: open files: cannot modify limit: Too many open files

如果您能帮助我解决这个问题,我将不胜感激。预先感谢您的帮助。

windows git bash ulimit

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

ulimits 中的 nproc 和 nofile 是什么?

我想知道 ulimits 中的 nofile 和 nproc 的用途,最好有示例。具体来说,它们在数据库中的作用是什么?

linux ulimit mongodb

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

为什么 ulimit -v 在 clang 的地址清理器下不起作用?

我正在使用libFuzzer来模糊 API。
该 API 反序列化位数组(由 libFuzzer 提供)
并将它们转换为 C++ 类实例化。

由于序列化格式,libFuzer 能够构造一个序列化对象,告诉反序列化器保留大量数据(这是无法满足的)。
这是通过调用 来完成的std::vector::resize()。向量抛出std::bad_alloc,尽管问题已被捕获并安全缓解,但它会导致模糊器极度滞后(如以下有关OOM 问题的文档中所述)。

为了降低模糊器运行时使用的内存量,我希望设置ulimit -v和调整进程的可用虚拟内存。然而这样做会导致

==27609==ERROR: AddressSanitizer failed to allocate 0xdfff0001000 (15392894357504) bytes at address 2008fff7000 (errno: 12)
==27609==ReserveShadowMemoryRange failed while trying to map 0xdfff0001000 bytes. Perhaps you're using ulimit -v
Run Code Online (Sandbox Code Playgroud)

为什么地址清理程序不能在 ulmit -v 下工作?
我希望可以,这样我就可以更有效地进行模糊测试。

其他信息:
我的构建标志是:

copts = [
    "-fsanitize=address,fuzzer",
    "-fsanitize-trap=undefined,integer",
    "-fsanitize-coverage=trace-pc,trace-cmp,trace-pc-guard",
    "-g",
    "-O0",
    "-fno-omit-frame-pointer",
    "-fno-sanitize=vptr",
],
linkopts = [
    "-fsanitize=address,fuzzer",
    "-fsanitize-trap=undefined,integer",
    "-fno-sanitize=vptr",
    "-fsanitize-link-c++-runtime",
],
Run Code Online (Sandbox Code Playgroud)

我尝试关闭标志,以便我可以设置 …

c++ ulimit clang++ address-sanitizer libfuzzer

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