too many open files
* too many open files
層次上:
1.修改系統(tǒng)級限制. (/etc/sysctl.conf)
2.修改用戶啟動shell限制.( /etc/security/limits.conf )
3.修改當(dāng)前回話限制. (有可能無效或者因為系統(tǒng)限制未修改.)(ulimited )
4.如果已經(jīng)啟動的程序,修復(fù)那么需要調(diào)用系統(tǒng)api RLIM_INFINITY.
如果1和2步驟都做的好,根本不需要3和4.
1,系統(tǒng)內(nèi)核限制
vi /etc/sysctl.conf
添加:
fs.file-max = 102400
sysctl -p
2,針對用戶的限制
臨時方案:
sysctl -w fs.file-max=10240
2,針對用戶的限制
cat /etc/security/limits.conf
vi /etc/security/limits.conf
* soft nofile 102400
* hard nofile 102400
查看某一個進(jìn)程的限制
cat /proc/815/limits
ulimit -f unlimited
ulimit -t unlimited
ulimit -v unlimited
ulimit -u 65535
ulimit -m unlimited
ulimit -u 65535
很可能會執(zhí)行出結(jié)果:
很可能 security-limits.conf 未設(shè)定或者設(shè)定的太小了.
大殺器:
sudo sh -c "ulimit -n 65535 && exec su $LOGNAME"
這句話可能不會執(zhí)行.bash_profile需要手工執(zhí)行以下.
另外這句話還要exit 2次.
fork出的子進(jìn)程,資源限制都是父進(jìn)程那里繼承來的.
ulimit 只是對會話有效.
如果不能關(guān)服務(wù)程序,只能動態(tài)需改.通過C程序.
參考:
bash內(nèi)建的功能.
很可能會執(zhí)行出結(jié)果:
ulimit: open files: cannot modify limit: Operation not permitted
ulimit: max locked memory: cannot modify limit: Operation not permitted
很可能 security-limits.conf 未設(shè)定或者設(shè)定的太小了.
大殺器:
sudo sh -c "ulimit -n 65535 && exec su $LOGNAME"
這句話可能不會執(zhí)行.bash_profile需要手工執(zhí)行以下.
另外這句話還要exit 2次.
fork出的子進(jìn)程,資源限制都是父進(jìn)程那里繼承來的.
ulimit 只是對會話有效.
如果不能關(guān)服務(wù)程序,只能動態(tài)需改.通過C程序.
ulimit 并不是一個命令,是一個shell內(nèi)部的指令.
sudo 是一個命令.所以無法執(zhí)行.sudo ulimit
當(dāng)前的shell被新shell覆蓋掉了.新的shell含有ulimit.
要exit 2次.
http://stackoverflow.com/questions/17483723/command-not-found-when-using-sudo-ulimit
參考:
bash內(nèi)建的功能.
http://www.gnu.org/software/bash/manual/bashref.html#Bourne-Shell-Builtins
一次「Too many open files」故障
http://huoding.com/2015/08/02/460
動態(tài)修改運行中進(jìn)程的 rlimit
http://xiezhenye.com/2013/02/%E5%8A%A8%E6%80%81%E4%BF%AE%E6%94%B9%E8%BF%90%E8%A1%8C%E4%B8%AD%E8%BF%9B%E7%A8%8B%E7%9A%84-rlimit.html
動態(tài)修改運行中進(jìn)程的 ulimit
中文注釋ulimit具體項目
動態(tài)修改運行中進(jìn)程的 ulimit
http://blog.chinaunix.net/uid-20662820-id-3928094.html
中文注釋ulimit具體項目
http://man.linuxde.net/ulimit
linux的ulimit限制詳解 --有測試系統(tǒng)代碼
http://www.dbafree.net/?p=967
posted on 2015-12-10 10:39 小高 閱讀(325) 評論(0) 編輯 收藏 所屬分類: Linux