ulimit修改打开文件上限的方式(ubuntu亲测通过)

本文介绍了在Linux系统中配置最大可打开文件数的方法。通过编辑 /etc/security/limits.conf 文件,设置 soft 和 hard 级别限制,所有用户生效。保存文件后,使用 ulimit 命令使配置在本次 shell 会话中生效。还解决了部分机器配置时的权限问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vim /etc/security/limits.conf

在文件末尾加上:

* soft nofile 65535

* hard nofile 65535

保存退出。

注意“*”是要加到文件里面的。这两句话的含义是soft(应用软件)级别限制的最大可打开文件数的限制,hard表示操作系统级别限制的最大可打开文件数的限制,“*”表示所有用户都生效。保存这个文件(只有root用户能够有权限)。

保存这个文件后,配置是不会马上生效的,为了保证本次shell会话中的配置马上有效,我们需要通过ulimit命令更改本次的shell会话

ulimit -n 65535

接下来ulimit -a查看,显示如下:
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 3829
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65535
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 3829
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
 

可以看到可以打开的文件数已经变成65535了

还有一个问题是,有的机器就算先改好了配置文件的设置,但是在执行ulimit -n 65536时,仍然不行,会提示bash: ulimit: open files: cannot modify limit: Operation not permitted错误,此时就需要切换到root下面,然后修改ulimit -n 65535 然后在切换到本用户下面,此时查看ulimit -a发现已经成功改好了,但是注意,切换回到本用户时不要使用exit退出,而要使用sudo su的方式进行切换,因为exit退出之后shell会话相当于结束了root用户,所有root的保存的设置都会失效,但是sudo su切换到本用户就相当于本用户使用了root用户的配置而不会出现配置失效的情况。

 

转载自:https://blog.youkuaiyun.com/liupeifeng3514/article/details/79054485

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值