Linux下增大可打开文件描述符的最大数的方法

在安装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

看来是作用域的问题,增大文件描述符。

(0)

相关推荐

  • Linux下如何增大可打开文件描述符的最大数

    在安装Oracle Grid Infrastructure检查约束时遇到一个错误,大体是说当前可打开的文件描述符的最大数为1024,而要求是65536. 于是在gird用户下执行ulimit -a,显 ...

  • Linux下修改文件描述符的大小的方法

    在Linux下默认的文件描述符大小为1024,可以通过下面的命令查看: [root@localhost -]# ulimit -n 某些特殊情况,可能需要修改文件描述符的大小,比如说运行squid服务 ...

  • 玩转Linux文件描述符和重定向

    linux下的文件描述符是与文件输入、输出相关联的整数。它们用来跟踪已打开的文件。 最常见的文件描述符是stdin、stdout和stderr.我们可以将某个文件描述符的内容重定向到另一个文件描述符中 ...

  • Linux内核中的文件描述符

    Kernel version:2.6.14 CPU architecture:ARM920T 作为文件的使用者,进程理所当然的要将所使用的文件记录于自己的控制块中,也就是task_struct。另外, ...

  • Linux中通过Socket文件描述符寻找连接状态介绍

    Proc虚拟文件系统下面有许多数字命名的子目录,这些数字表示系统当前运行的进程号; 其中/proc/N/fd目录下面保存了打开的文件描述符,指向实际文件的一个链接.如下: 代码如下: [root@XX ...

  • Linux 从进程相关的文件描述中恢复数据

    在Linux中误删除了某个文件,但是 ps-ef|grep 文件名 发现某个进程还在使用该文件,那么可以通 过以下方式恢复文件。 例如: 创建一个简单文件/tmp/test.txt, 随便向里面写点内 ...

  • 如何在linux下编辑和修改文件:

    我们在linux下有很多的地方,需要使用和修改文件,这里我们介绍的是,linux的自带的工具vi文本编辑工具.这个是很强大的一个工具. 我们在linux下主要使用的是这个工具.这里小编,就来介绍一下, ...

  • EditPlus怎么显示文件的绝对路径?EditPlus直接显示打开文件的全路径的设置方法

    EditPlus是一款功能强大的文字编辑器.它可以打开很多格式的文件,要是EditPlus能直接显示出打开文件的绝对路径就好了,因为那就省去了用属性查看的方式.那么,EditPlus怎么显示文件的绝对 ...

  • Linux下将UTF8编码批量转换成GB2312编码的方法

    UTF8编码和GB2312编码是有区别的,在sqlplus中导入UTF8编码的sql脚本就会出现乱码错误,这时就需要将UTF8编码转换成GB2312编码,可是一个个的转换十分麻烦,下面小编就教你如何在 ...