歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux 打開句柄限制的調整

Linux 打開句柄限制的調整

日期:2017/2/28 14:02:27   编辑:Linux教程

Linux---進程句柄限制總結 http://www.linuxidc.com/Linux/2015-04/116392.htm

!! 本文內容僅在 RHEL6.4 上測試通過.

Linux 句柄限制分為1系統級限制和2用戶級限制:

/proc/sys/fs/nr_open > /proc/sys/fs/file-max >= ulimit -Hn >= ulimit -Sn

1 系統級限制

1.1 /proc/sys/fs/nr_open

系統文件系統支持文件句柄總數上限, 默認值1048576 (1M). 該值上限受限於系統內存. 這個是所有限制的最大值.

1.2 /proc/sys/fs/file-max

系統文件系統支持文件句柄總數最大值, 必須小於 nr_open. 查看命令(下面3個命令等效):

[root@vm-cdh4 ~]# sysctl -a | grep -i file-max --color
fs.file-max = 188436
[root@vm-cdh4 ~]# cat /proc/sys/fs/file-max
188436
[root@vm-cdh4 ~]# sysctl -e fs.file-max
fs.file-max = 188436

查看當前系統使用的打開文件描述符數命令:

[root@vm-cdh4 ~]# cat /proc/sys/fs/file-nr
832 0 188436

其中file-max = 188436

1.3 更改 file-max

臨時改變, 重啟後消失:

[root@vm-cdh4 ~]# sysctl -w fs.file-max=102400

永久性的更改, 在/etc/sysctl.conf中加入(適用於 2.2 和 2.4 版內核):

fs.file-max=102400
#### 僅對於2.2 版內核:
#### fs.inode-max=102400

/etc/sysctl.conf改變之後,運行下面的命令使改變立即生效:

[root@vm-cdh4 ~]# sysctl -p

2 用戶級限制

2.1 硬上限 ulimit -Hn

單個進程句柄數硬上限. <= file-max. 查看命令:

[root@vm-cdh4 ~]# ulimit -Hn
4096

臨時更改, 重啟後消失:

[root@vm-cdh4 ~]# ulimit -Hn 8192
[root@vm-cdh4 ~]# ulimit -Hn
8192

2.2 軟上限 ulimit -Sn

單個進程句柄數軟上限, <= ulimit -Hn. 查看命令:

[root@vm-cdh4 ~]# ulimit -Sn
1024
[root@vm-cdh4 ~]# ulimit -n
1024

臨時更改, 重啟後消失:

[root@vm-cdh4 ~]# ulimit -Sn 8000
[root@vm-cdh4 ~]# ulimit -n
8000

2.3 修改單個進程句柄數上限

同時臨時修改軟硬上限(<=file-max)重啟後消失:

[root@vm-cdh4 ~]# ulimit-SHn 10240

永久修改軟硬上限(RHEL6.4), 在 /etc/security/limits.conf 裡設置(* 表示對所有用戶):

#......
#@student - maxlogins 4

* hard nofile 10240
* soft nofile 10240

# End of file

Copyright © Linux教程網 All Rights Reserved