回答
作爲系統管理員:/etc/security/limits.conf
文件在大多數Linux安裝上控制此功能;它允許您設置每個用戶的限制。你會想要一條線,如myuser - nofile 1000
。
在一個過程中:The getrlimit and setrlimit calls控制大多數進程資源分配限制。 RLIMIT_NOFILE
控制文件描述符的最大數量。您將需要適當的權限來調用它。
舊線程,我知道。
您可以使用gdb,打入進程,調用上述系統調用來提高您感興趣的限制,然後繼續工作並退出gdb。我用這種方式幾次編輯了一些東西。
您的應用程序不會停機,而是在執行呼叫時暫時凍結。如果你很快(或者你編寫它!),它可能不會引人注目。
感謝您的提示! – 2014-01-14 11:54:05
+1好建議,[本文](http://superuser.com/a/441758/81173)和[本博客](http://gregchapple.com/updating-ulimit-on-running-linux-process /)描述如何去做。 – 2014-07-09 17:48:45
是的,這有點像調整矩陣使事情工作...停止世界,編輯變量,繼續世界......哦!幻覺記憶!我是一個! (好吧,當我有gdb的時候!) – lornix 2014-07-09 21:15:39
是的,可以在運行時增加/proc/<pid>/limits
的限制。只要找到PID並執行以下命令:
echo -n "Max open files=20:20" > /proc/$pid/limits
不要在Ubuntu 14.04.2 LTS上開火。 – 2015-07-23 01:04:42
echo -n "Max open files=20:20" > /proc/$pid/limits
...在RHEL5.5和RHEL6.7的作品。
請注意,「-n」是強制性的;尾隨的換行符會產生關於無效參數的投訴。
另一種選擇是使用prlimit命令(來自util-linux軟件包)。例如,如果你想設置的打開文件的最大數量的過程:
prlimit -n4096 -p pid_of_process
或debian,或Ubuntu的,或... – t2d 2016-08-23 16:20:42
我使用linux mint(基於Ubuntu),我無法在默認安裝中找到它。通常情況下,它是util-linux軟件包的一部分,但是Mint上的這個軟件包並沒有提供這個命令。 – redobot 2016-08-24 07:15:09
➜〜lsb_release -d 說明:\t的Ubuntu 16.04.1 LTS ➜〜whereis prlimit prlimit:在/ usr/bin中/ prlimit /usr/share/man/man2/prlimit.2.gz在/ usr/share/man中/ man1/prlimit.1.g – t2d 2016-08-24 11:05:55
下面的命令給打開文件的最大#每個進程默認允許限制(分別爲軟和硬):
ulimit -Sa
ulimit -Ha
您可以使用程序或命令來更改這些限制。看看ulimit(man ulimit)。
- 1. PHP FPM進程打開大量文件並將它們打開
- 2. neo4j和最大打開文件
- 3. Linux:如何更改進程可以打開的最大文件數?
- 4. Python子進程:太多打開文件
- 5. 從工作目錄中打開文件
- 6. 打開MP3文件JavaFX的工作不
- 7. 打開大型CSV文件?
- 8. Python可以打開的文件的最大大小?
- 9. 如何打開一個.xls文件作爲單獨的進程
- 10. 打開CV進口不工作
- 11. Android工作室從應用程序打開外部文件
- 12. Sharepoint 2010工作流程錯誤,無法打開文件
- 13. CSV文件在CentOS中作爲二進制文件打開
- 14. 兩個進程打開同一個文件進行寫入
- 15. 函數打開.txt文件和打印內容不工作
- 16. Python。文件打開程序
- 17. 當應用程序不應該打開時最大化應用程序打開
- 18. 的Neo4j無法啓動:最大1024打開文件允許
- 19. _setmaxstdio最大打開的文件只有2048?
- 20. 爲什麼Redis的不能設置最大打開文件
- 21. 如何更改SimGrid中打開文件的最大數量?
- 22. 在AWS EC2實例中增加Beanstalkd的最大打開文件
- 23. 更改Windows中打開文件的最大數量
- 24. 如何打開使用文件最大化的繪圖
- 25. Servlet 3.0 multipart-config無法在最大文件大小下工作
- 26. OpenRead工作時Silverlight中的打開文件不起作用
- 27. 第二個Excel文件打開時工作表更改事件停止工作
- 28. 最大化工作線程利用
- 29. 使用打開和vwait在單獨的進程中打開文件
- 30. 進程的平均工作集大小
附加信息:我的過程是'java'。我需要增加「最大打開文件」而不停止進程。 – wako 2010-09-17 12:00:24