修改linux的最大文件句柄數限制


修改linux的最大文件句柄數限制
 對於一般的應用來說(象Apache、系統進程)1024完全足夠使用。但是如何象squid、mysql、java等單進程處理大量請求的應用來說就有點捉襟見肘了。如果單個進程打開的文件句柄數量超過了系統定義的值,就會提到“too many files open”的錯誤提示。如何知道當前進程打開了多少個文件句柄呢?下面一段小腳本可以幫你查看:
1
lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more
 
修改linux的最大文件句柄數限制的方法:
      1)ulimit -n  65535  
            在當前session有效,用戶退出或者系統重新后恢復默認值
      2)修改profile文件:在profile文件中添加:ulimit -n  65535 
           只對當個用戶有效
      3)修改文件:/etc/security/limits.conf,在文件中添加:(立即生效-當前session中運行ulimit -a命令無法顯示)
 
[ html]  
* soft nofile  32768 #限制單個進程最大文件句柄數(到達此限制時 系統報警)  
* hard nofile  65536 #限制單個進程最大文件句柄數(到達此限制時系統報錯)  
      4)修改文件:/etc/sysctl.conf。在文件中添加:
[html]  
fs.file-max= 655350 #限制整個系統最大文件句柄數  
      運行命令:/sbin/sysctl -p 使配置生效


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM