2016-06-28 99 views
1

我必須執行一個.jar,我需要在執行之前使用ulimit。 於是,我做了一個shell腳本:ulimit不能在shell中工作

#!/bin/sh 
ulimit -S -c unlimited 
/usr/java/jre1.8.0_91/bin/java -jar /home/update.jar 

不過的ulimit似乎被忽略,因爲我有這樣的錯誤:

java.lang.InternalError: java.io.FileNotFoundException: /usr/java/jre1.8.0_91/lib/ext/localedata.jar (Too many open files) 

也許有人有一個解決方案嗎? 謝謝

回答

1

如果你想改變最大打開文件,你需要使用ulimit -n

實施例:

#的ulimit -n 8192

-c選項改變核心文件大小(核心轉儲),而不是最大打開的文件。

您需要將ulimit應用於將調用java應用程序的shell。

+0

因此,我寫「#ulimit -n 8192」而不是「ulimit -S -c unlimited」? – Mathilde

+0

沒有#。寫:'ulimit -n 8192'最多可打開8192個文件。 – pah

+0

好的,我會試試看,謝謝! – Mathilde

相關問題