Linux本身对每个用户拥有的最大进程数有限制。可以在用户根目录下的“ .bashrc”文件或

者实际使用与“ .bashrc”功能相当的 shell的脚本中加入这种限制。编辑“ .bashrc”文件(例如:

vi /root/.bashrc)并加入下面一行:

ulimit -u unlimited

然后退出,重新登录。为了验证,可以以 root身份登录,然后键入: ulimit -a,在最大用户

进程数一项中应该显示 unlimited,例如:

[root@Aid]# ulimit -a

core file size (blocks) 1000000

data seg size (kbytes) unlimited

file size (blocks) unlimited

max memory size (kbytes) unlimited

stack size (kbytes) 8192

cpu time (seconds) unlimited

max user processes unlimited * this line.

pipe size (512 bytes) 8

open files 1024

virtual memory (kbytes) 2105343


注意我们更倾向于在命令行键入 unlimit -u而不是把它加入到文件“ /root/.bashrc”中。


但为保险起见,建议还是把它加入文件“ /root/.bashrc”中

增加系统打开的文件数目

 

增加当前进程打开文件的数目。 RedHat 6.0(内核 2.2.5)中,使用这种方法进程可以至少打

31000个文件描述符;内核版本 2.2.12中,可以至少打开 90000个文件描述符(在适当的限制下)。

它的上限仅受限于可用内存。

编辑“.bashrc”文件(例如: vi /root/.bashrc)并加入下面一行:

ulimit -n 90000

然后退出,重新登录。为了验证,可以以 root身份登录,然后键入“ ulimit -a”,在打开文件

数一项中应该显示“ 90000”,例如:

[root@Aid]# ulimit -a

core file size (blocks) 1000000

data seg size (kbytes) unlimited

file size (blocks) unlimited

max memory size (kbytes) unlimited

stack size (kbytes) 8192

cpu time (seconds) unlimited

max user processes unlimited

pipe size (512 bytes) 8

open files 90000 * this line.

virtual memory (kbytes) 2105343

注意在早于 2.2版内核的系统中,即使进行了上述修改,每个进程所能打开的文件数目仍然限制在1024。