请求多的Linux服务器,如不改最大打开文件数的话,那是一个悲剧~
可以用命令 ulimit -n 看看当前最大可打开文件数 默认是1024
如果加大呢?
临时方法是ulimit -n 8192 这个方法是临时的,也就是重启电脑或者重新登录后又会恢复成1024,且只有 root 用户有权限改。
永久方法:
修改以下两个文件:
1./etc/security/limits.conf
vi /etc/security/limits.conf
加上:
* soft nofile 10240
* hard nofile 20480
(数目按情况自己改)
2./etc/pam.d/login
vi /etc/pam.d/login
在后面加上
session required pam_limits.so
写程序实现的话:
#include <stdio.h>;
#include <unistd.h>;
#include <sys/time.h>;
#include <sys/types.h>;
#include <sys/resource.h>;
struct rlimit limit;
int main()
{
getrlimit(RLIMIT_NOFILE,&limit);
printf("current file limit is %d\n",limit.rlim_cur);
printf("hard file limit is %d\n",limit.rlim_max);
limit.rlim_max = 10000;
setrlimit(RLIMIT_NOFILE,&limit);
printf("hard file limit is %d\n",limit.rlim_max);
return 0;
}
本文介绍了如何在Linux系统中调整文件描述符的最大数量限制,包括临时调整和永久修改的方法。通过修改配置文件和使用系统调用,可以有效提高并发处理能力。
1260

被折叠的 条评论
为什么被折叠?



