如何在Linux下增大可打开文件描述符的数目
答案:2 悬赏:0 手机版
解决时间 2021-01-27 01:07
- 提问者网友:几叶到寒
- 2021-01-26 19:10
如何在Linux下增大可打开文件描述符的数目
最佳答案
- 五星知识达人网友:不甚了了
- 2021-01-26 20:34
在安装Oracle Grid Infrastructure检查约束时遇到一个错误,大体是说当前可打开的文件描述符的最大数为1024,而要求是65536。
于是在gird用户下执行ulimit -a,显示可打开的最大文件数为1024,这是默认值;执行ulimit -n 65536不允许修改,转到root下面执行ulimit -n 65536,执行ulimit -a 显示为65536,在grid用户下执行依然为1024。当时想到用sudo的方式执行,对gird用户赋予所有权限,执行ulimit -n 65536依然报错。
后来想起在配置/etc/profile文件里,对oracle有ulimit -n 65536的命令,如下:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
添加grid用户后,source /etc/profile
if [ $USER = "oracle" ] || [ $USER = "grid" ] ; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
在grid执行ulimit -a依然为1024,后来检查安装步骤发现忘了在/etc/security/limits中添加grid用户了,添加下面即可:
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
看来是作用域的问题,增大文件描述符。
于是在gird用户下执行ulimit -a,显示可打开的最大文件数为1024,这是默认值;执行ulimit -n 65536不允许修改,转到root下面执行ulimit -n 65536,执行ulimit -a 显示为65536,在grid用户下执行依然为1024。当时想到用sudo的方式执行,对gird用户赋予所有权限,执行ulimit -n 65536依然报错。
后来想起在配置/etc/profile文件里,对oracle有ulimit -n 65536的命令,如下:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
添加grid用户后,source /etc/profile
if [ $USER = "oracle" ] || [ $USER = "grid" ] ; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
在grid执行ulimit -a依然为1024,后来检查安装步骤发现忘了在/etc/security/limits中添加grid用户了,添加下面即可:
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
看来是作用域的问题,增大文件描述符。
全部回答
- 1楼网友:琴狂剑也妄
- 2021-01-26 20:55
我是来看评论的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯